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
:两位数的月份(01-12)%d
:两位数的日期(01-31)%H
:两位数的小时(24小时制,00-23)%M
:两位数的分钟(00-59)%S
:两位数的秒(00-59)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