Python 日期和时间戳的转换
1. Python中处理时间的模块
Python中处理时间的模块有time、datetime和calendar。
在Python中表示时间的方式:
- 时间戳:10位整数位和若干小数位,例如 1551153156.6358607
- 元组(struct_time): 含有9个元素的元组,例如 (tm_year=2011, tm_mon=9, tm_mday=28, tm_hour=10, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=271, tm_isdst=-1)
- 格式化字符串: 格式化的时间字符串, 例如 ‘2019-02-26 12:45:46‘
各个模块使用各自的方法,以元组(struct_time)为核心实现时间戳和格式化时间字符串的相互转换。
2. Python的time模块
使用time模块来进行格式化时间字符串和时间戳的相互转换。
2.1 将时间戳转换为格式化字符串
使用time模块获取当前时间的时间戳:
>>> import time >>> time.time() 1551157481.034565
将时间戳转换为元组(struct_time):
>>> time.localtime(time.time())
time.struct_time(tm_year=2019, tm_mon=2, tm_mday=26, tm_hour=13, tm_min=2, tm_sec=1, tm_wday=1, tm_yday=57, tm_isdst=0)
将元组(struct_time)转换为格式化时间字符串:
>>> time.strftime(‘%Y-%m-%d %H:%M:%S‘, time.localtime(time.time())) ‘2019-02-26 13:04:41‘
2.2 将格式化字符串转换为时间戳
将格式化时间字符串‘2019-02-26 13:04:41‘转换为时间戳。
将格式化时间字符串转换为元组(struct_time):
>>> str_time = ‘2019-02-26 13:04:41‘ >>> time.strptime(str_time, ‘%Y-%m-%d %H:%M:%S‘) time.struct_time(tm_year=2019, tm_mon=2, tm_mday=26, tm_hour=13, tm_min=4, tm_sec=41, tm_wday=1, tm_yday=57, tm_isdst=-1)
将元组(struct_time)转换为时间戳:
>>> time.mktime(time.strptime(str_time, ‘%Y-%m-%d %H:%M:%S‘)) 1551157481.0
2. 参考资料
原文:https://www.cnblogs.com/strivepy/p/10436213.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!