当前位置:首页 > Python教程 > python技巧

Python 日期和时间戳的转换

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)!

相关教程推荐

其他课程推荐