将unix时间戳字符串转换为可读日期

将unix时间戳字符串转换为可读日期

我有一个字符串,表示Python中的Unix时间戳(即“1284101485”),我希望将它转换为可读的日期。当我用time.strftime,我得到一个TypeError:

>>>import time
>>>print time.strftime("%B %d %Y", "1284101485")

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: argument must be 9-item sequence, not str


白猪掌柜的
浏览 620回答 3
3回答

饮歌长啸

使用datetime模块:from&nbsp;datetime&nbsp;import&nbsp;datetime ts&nbsp;=&nbsp;int("1284101485")#&nbsp;if&nbsp;you&nbsp;encounter&nbsp;a&nbsp;"year&nbsp;is&nbsp;out&nbsp;of&nbsp;range"&nbsp;error&nbsp;the&nbsp;timestamp#&nbsp;may&nbsp;be&nbsp;in&nbsp;milliseconds,&nbsp;try&nbsp;`ts&nbsp;/=&nbsp;1000`&nbsp;in&nbsp;that&nbsp;caseprint(datetime.utcfromtimestamp(ts).strftime('%Y-%m-%d&nbsp;%H:%M:%S'))

阿晨1998

投票最多的答案是使用FROM时间戳,这很容易出错,因为它使用的是本地时区。为了避免问题,更好的方法是使用UTC:datetime.datetime.utcfromtimestamp(posix_time).strftime('%Y-%m-%dT%H:%M:%SZ')其中POSIX_TIME是您想要转换的POSIX时代
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python