Python 中的日期不是独立的数据类型,但我们可以导入一个名为 datetime 的模块来使用日期作为日期对象。
示例:导入 datetime 模块并显示当前日期:
import datetime
x = datetime.datetime.now()
print(x)
日期输出
当我们执行上面示例中的代码时,结果将是:
2023-10-09 19:28:48.216094
日期包含年、月、日、小时、分钟、秒和微秒。datetime 模块有许多方法可以返回有关日期对象的信息。以下是一些示例,您将在本章后面了解更多信息:
示例:返回年份和星期几的名称:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
创建日期对象
要创建日期,我们可以使用 datetime 模块的 datetime() 类(构造函数)。datetime() 类创建日期需要三个参数:年、月、日。
示例:创建日期对象:
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
datetime() 类还接受时间和时区的参数(小时、分钟、秒、微秒、时区),但它们是可选的,具有默认值 0(时区为 None)。
strftime() 方法
datetime 对象具有将日期对象格式化为可读字符串的方法。该方法称为 strftime(),并接受一个参数 format,用于指定返回字符串的格式:
示例:显示月份的名称:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
所有合法格式代码的参考:
|指令|描述|示例| |-|-|-| |%a|缩写的星期几|Wed| |%A|完整的星期几|Wednesday| |%w|星期几(0-6,0 代表星期日)|3| |%d|月份中的第几天(01-31)|31| |%b|缩写的月份名|Dec| |%B|完整的月份名|December| |%m|月份(01-12)|12| |%y|去掉世纪的年份(00-99)|18| |%Y|完整的年份|2018| |%H|小时(00-23)|17| |%I|小时(00-12)|05| |%p|AM/PM|PM| |%M|分钟(00-59)|41| |%S|秒(00-59)|08| |%f|微秒(000000-999999)|548513| |%z|UTC 偏移|+0100| |%Z|时区|CST| |%j|年内的第几天(001-366)|365| |%U|年内的第几周(以星期日为一周的第一天,00-53)|52| |%W|年内的第几周(以星期一为一周的第一天,00-53)|52| |%c|本地日期和时间的字符串|Mon Dec 31 17:41:00 2018| |%C|世纪|20| |%x|本地日期字符串|12/31/18| |%X|本地时间字符串|17:41:00| |%%|百分号|%| |%G|ISO 8601 年份|2018| |%u|ISO 8601 星期几(1-7)|1| |%V|ISO 8601 周号(01-53)|01|