Python3时间戳转换为指定格式的日期

在写Python的时候经常会遇到时间格式的问题,首先就是最近用到的时间戳(timestamp)和时间字符串之间的转换。所谓时间戳,就是从 1970年1月1日 00:00:00 到现在的秒数。原来我也写过关于python3里面如何进行时间转换

在Python里,时间戳可以通过 time 模块里的 time() 方法获得,比如:

import time
timestamp = time.time()
print(timestamp)

输出结果:

1551077515.952753

这个数可以这么理解, 小数点前面的是从1970年1月1日 00:00:00 到现在的秒数, 小数点后面是微秒的计数。

这个时间戳不容易记忆和理解, 所以我们希望把它转换成人容易理解的时间格式,时间戳转换为指定格式的日期,常用到的模块是time和datetime。

方法1:使用time模块

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模块

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更偏底层,我专门写过一篇文章来介绍time和datetime的区别和联系


上一篇:Python 中__new__方法详解及使用
下一篇:如何在MacOS下安装Python3

PythonTab微信公众号:

Python技术交流互助群 ( 请勿加多个群 ):

群1: 87464755

群2: 333646237

群3: 318130924

群4: 385100854