datetime 模块是 Python 标准库中的一个模块,用于处理日期和时间。这个模块提供了多种方法和类来创建、操作和格式化日期和时间。以下是 datetime 模块的详细教程。
datetime
import datetime
now = datetime.datetime.now() print(now) # 输出格式如:2024-06-05 14:23:12.345678
today = datetime.date.today() print(today) # 输出格式如:2024-06-05
date = datetime.date(2024, 6, 5) print(date) # 输出:2024-06-05
time = datetime.time(14, 23, 45) print(time) # 输出:14:23:45
datetime_obj = datetime.datetime(2024, 6, 5, 14, 23, 45) print(datetime_obj) # 输出:2024-06-05 14:23:45
strftime
strftime 方法用于将日期时间对象格式化为字符串。
now = datetime.datetime.now() formatted_date = now.strftime("%Y-%m-%d %H:%M:%S") print(formatted_date) # 输出格式如:2024-06-05 14:23:12
常用格式化代码:
%Y
%m
%d
%H
%M
%S
strptime
strptime 方法用于将字符串解析为日期时间对象。
date_str = "2024-06-05 14:23:45" date_obj = datetime.datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S") print(date_obj) # 输出:2024-06-05 14:23:45
timedelta
timedelta 对象表示两个日期或时间之间的差。
from datetime import timedelta now = datetime.datetime.now() print("现在时间:", now) # 加一天 tomorrow = now + timedelta(days=1) print("明天的这个时间:", tomorrow) # 减一小时 one_hour_ago = now - timedelta(hours=1) print("一小时前的这个时间:", one_hour_ago)
可以直接比较两个日期时间对象。
date1 = datetime.datetime(2024, 6, 5, 14, 23, 45) date2 = datetime.datetime(2023, 6, 5, 14, 23, 45) print(date1 > date2) # 输出:True print(date1 < date2) # 输出:False print(date1 == date2) # 输出:False
now = datetime.datetime.now() print("年:", now.year) print("月:", now.month) print("日:", now.day) print("时:", now.hour) print("分:", now.minute) print("秒:", now.second)
假设我们需要编写一个脚本来计算两个日期之间的天数差,并将当前日期和时间格式化为指定的字符串。
import datetime # 计算两个日期之间的天数差 date1 = datetime.date(2024, 6, 5) date2 = datetime.date(2023, 6, 5) delta = date1 - date2 print(f"两个日期之间的天数差: {delta.days} 天") # 获取当前日期和时间,并格式化为指定的字符串 now = datetime.datetime.now() formatted_date = now.strftime("%Y-%m-%d %H:%M:%S") print(f"当前日期和时间: {formatted_date}")
运行该脚本的输出可能如下:
两个日期之间的天数差: 366 天 当前日期和时间: 2024-06-05 14:23:12
以上就是 Python 中使用 datetime 模块处理日期和时间的基本方法和示例。通过掌握这些基本操作,你可以轻松处理各种日期和时间相关的任务。
原文链接:codingdict.net