在写Python的时候经常会遇到时间格式的问题,首先就是最近用到的时间戳(timestamp)和时间字符串之间的转换。所谓时间戳,就是从 1970年1月1日 00:00:00 到现在的秒数。原来我也写过关于python3里面如何进行时间转换。
在Python里,时间戳可以通过 time 模块里的 time() 方法获得,比如:
1
2
3
|
import time
timestamp = time.time()
print (timestamp)
|
输出结果:
1551077515.952753
这个数可以这么理解, 小数点前面的是从1970年1月1日 00:00:00 到现在的秒数, 小数点后面是微秒的计数。
这个时间戳不容易记忆和理解, 所以我们希望把它转换成人容易理解的时间格式,时间戳转换为指定格式的日期,常用到的模块是time和datetime。
方法1:使用time模块
1
2
3
4
5
|
import time
timeStamp = 1551077515
timeArray = time.localtime(timeStamp)
formatTime = time.strftime( "%Y-%m-%d %H:%M:%S" , timeArray)
print (formatTime)
|
结果:
2019-02-25 14:51:55
方法2:使用datetime模块
1
2
3
4
5
|
import datetime
timeStamp = 1551077515
timeArray = datetime.datetime.utcfromtimestamp(timeStamp)
formatTime = timeArray.strftime( "%Y-%m-%d %H:%M:%S" )
print (formatTime)
|
结果:
2019-02-25 14:51:55
得到的结果是完全一样的, 这里time和datetime都可以把时间戳转换为指定时间格式, 但是他们俩还是有区别的, 总体来讲time比datetime更偏底层。
关于Python时间转换之时间戳转换为指定格式的日期到此就完了,更多关于Python时间转换方法请查看下面的相关链接