datetime
模块是 Python 标准库中用于处理日期和时间的模块。在本节中,我们将介绍 datetime
模块的一些常用功能,并通过实例代码详细讲解每个知识点。
6.3.1 导入 datetime
模块
要使用 datetime
模块,首先需要导入它:
import datetime
6.3.2 datetime
类
datetime
模块提供了一个名为 datetime
的类,用于表示日期和时间。以下是一些创建 datetime
对象的方法:
1. 当前日期和时间
要获取当前的日期和时间,可以使用 datetime.now()
方法:
import datetime
current_datetime = datetime.datetime.now()
print(f"Current date and time: {current_datetime}")
2. 指定日期和时间
要创建一个具有指定日期和时间的 datetime
对象,可以使用 datetime
类的构造函数:
import datetime
dt = datetime.datetime(2023, 6, 6, 12, 30, 45)
print(f"Specified date and time: {dt}")
在这个例子中,我们创建了一个表示 2023 年 6 月 6 日 12:30:45 的 datetime
对象。
6.3.3 date
类
datetime
模块还提供了一个名为 date
的类,用于表示日期。以下是一些创建 date
对象的方法:
1. 当前日期
要获取当前的日期,可以使用 date.today()
方法:
import datetime
current_date = datetime.date.today()
print(f"Current date: {current_date}")
2. 指定日期
要创建一个具有指定日期的 date
对象,可以使用 date
类的构造函数:
import datetime
d = datetime.date(2023, 6, 6)
print(f"Specified date: {d}")
在这个例子中,我们创建了一个表示 2023 年 6 月 6 日的 date
对象。
6.3.4 time
类
datetime
模块还提供了一个名为 time
的类,用于表示时间。以下是一些创建 time
对象的方法:
1. 指定时间
要创建一个具有指定时间的 time
对象,可以使用 time
类的构造函数:
import datetime
t = datetime.time(12, 30, 45)
print(f"Specified time: {t}")
在这个例子中,我们创建了一个表示 12:30:45 的 time
对象。
6.3.5 timedelta
类
datetime
模块提供了一个名为 timedelta
的类,用于表示时间间隔。以下是一些创建 timedelta
对象的方法:
1. 指定时间间隔
要创建一个具有指定时间间隔的 timedelta
对象,可以使用 timedelta
类的构造函数:
import datetime
delta = datetime.timedelta(days=7, hours=2)
print(f"Specified timedelta: {delta}")
在这个例子中,我们创建了一个表示 7 天 2 小时的时间间隔。
2. 运算
可以使用 timedelta
对象进行日期和时间的运算。
示例:
import datetime
current_date = datetime.date.today()
delta = datetime.timedelta(days=7)
future_date = current_date + delta
print(f"Current date: {current_date}")
print(f"Future date: {future_date}")
在这个例子中,我们计算了当前日期后的 7 天的日期。
6.3.6 格式化日期和时间
strftime()
方法用于将 datetime
、date
和 time
对象格式化为字符串。以下是一些常用的格式化代码:
%Y
:四位数的年份%m
:月份(01-12)%d
:日(01-31)%H
:小时(00-23)%M
:分钟(00-59)%S
:秒(00-59)
示例:
import datetime
current_datetime = datetime.datetime.now()
formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M:%S")
print(f"Formatted date and time: {formatted_datetime}")
在这个例子中,我们将当前日期和时间格式化为 "YYYY-MM-DD HH:MM:SS" 格式的字符串。
6.3.7 解析日期和时间
strptime()
方法用于将字符串解析为 datetime
对象。它需要两个参数:要解析的字符串和解析使用的格式。
示例:
import datetime
date_string = "2023-06-06 12:30:45"
format_string = "%Y-%m-%d %H:%M:%S"
parsed_datetime = datetime.datetime.strptime(date_string, format_string)
print(f"Parsed date and time: {parsed_datetime}")
在这个例子中,我们将 "2023-06-06 12:30:45" 格式的字符串解析为 datetime
对象。
6.3.8 替换日期和时间的部分值
replace()
方法用于替换 datetime
、date
和 time
对象的部分值。
示例:
import datetime
current_datetime = datetime.datetime.now()
new_datetime = current_datetime.replace(year=2024, month=1)
print(f"Current date and time: {current_datetime}")
print(f"New date and time: {new_datetime}")
在这个例子中,我们将当前日期和时间的年份和月份替换为 2024 年 1 月。
以上就是 Python 标准库中 datetime
模块的基本介绍。通过这些实例,你应该已经对如何使用 datetime
模块处理日期和时间有了一个基本的了解。在实际编程中,可以根据具体需求选择合适的方法进行日期和时间的操作。
推荐阅读:
https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA
https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g