Python datetime模块常用方法

 datetime 模块是对 time 模块的一个高级封装,提供了对日期、时间、时区、时间段的操作。与 time 模块相比,datetime 模块提供的接口更直观、易用,功能也更加强大。datetime 模块定义的类如表 1 所示。

表 1:datetime 模块定义的类
类名 描述
datetime.date 日期类
datetime.time 时间类
datetime.datetime 日期与时间类
datetime.timedelta 表示两个 date、time、datetime 实例之间的时间差
datetime.tzinfo 时区相关信息对象的抽象基类
datetime.timezone 实现 tzinfo 抽象基类的类,表示与 UTC 的固定偏移量

datetime.datetime 类的常用属性和方法如表 2 所示。

表 2:datetime.datetime 类的常用属性和方法
属性或方法 描述
datetime.today() 返回一个表示当前本期日期时间的 datetime 对象
datetime.now([tz]) 返回指定时区日期时间的 datetime 对象,如果不指定 tz 参数则结果同上
datetime.utcnow() 返回当前 UTC 日期时间的 datetime 对象
datetime.fromtimestamp(timestamp[, tz]) 根据指定的时间戳创建一个 datetime 对象
datetime.utcfromtimestamp(timestamp) 根据指定的时间戳创建一个 datetime 对象
datetime.combine(date, time) 把指定的 date 和 time 对象整合成一个 datetime 对象
datetime.strptime(date_str, format) 将时间字符串转换为 datetime 对象
dt.year, dt.month, dt.day 年、月、日
dt.hour, dt.minute, dt.second 时、分、秒
dt.microsecond, dt.tzinfo 微秒、时区信息
dt.date() 获取 datetime 对象对应的 date 对象
dt.time() 获取 datetime 对象对应的 time 对象,tzinfo 为 None
dt.timetz() 获取 datetime 对象对应的time对象,tzinfo 与 datetime 对象的 tzinfo 相同
dt.replace() 生成并返回一个新的 datetime 对象,如果所有参数都没有指定,则返回一个 与原 datetime 对象相同的对象
dt.timetuple()
返回 datetime 对象对应的 tuple (不包括 tzinfo)
dt.utctimetuple() 返回 datetime 对象对应的 utc 时间的 tuple(不包括 tzinfo)
dt.timestamp() 返回datetime对象对应的时间戳,Python 3.3才新增的
dt.toordinal() 同 date 对象
dt.weekday() 同 date 对象
dt.isocalendar() 同 date 对象
dt.isoformat([sep]) 返回一个“%Y-%m-%d”字符串
dt.ctime() 等效于 time 模块的 time.ctime(time.mktime(d.timetuple()))
dt.strftime(format) 返回指定格式的时间字符串

以下是调用表 2 中部分属性或方法的代码:

from datetime import datetime
datetime.today()
dt = datetime.now()
dt
dt.timestamp()
dt.weekday()
dt.strftime('%Y%m%d %H:%M:%S.%f')

上述代码的运行结果如下所示:

>>> from datetime import datetime
>>> datetime.today()
datetime.datetime(2020, 6, 3, 16, 30, 16, 436917)
>>> dt = datetime.now()
>>> dt
datetime.datetime(2020, 6, 3, 16, 30, 21, 648177)
>>> dt.timestamp()
1591173021.648177
>>> dt.weekday()
2
>>> dt.strftime('%Y%m%d %H:%M:%S.%f')
'20200603 16:30:21.648177'

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/23773.html

(0)
上一篇 2021年7月20日
下一篇 2021年7月20日

相关推荐

发表回复

登录后才能评论