如何从Unix时间戳中删除小时,分钟和秒?

时间:2015-04-27 03:03:57

标签: python datetime time

无需将其转换为datetime,如何从Unix时间戳中获取日期?换句话说,我想从时间戳中删除小时,分钟和秒,并获取仅代表日期的数字。

2 个答案:

答案 0 :(得分:3)

我知道你问过"无需转换为datetime",但我认为这是最好的方法。

>>> t
1430103943.581003
>>> datetime.date(datetime.fromtimestamp(t)).strftime("%s")
'1430056800'

要手动完成,需要了解所有特殊情况,闰年,闰秒等。这是不切实际的,datetime已经为你完成了所有繁重的工作,所以为什么要这么麻烦?

答案 1 :(得分:1)

如果在类似OS的UNIX中运行脚本,则可以使用date命令 -

>>>import subprocess
>>>process=subprocess.Popen(['date','-d','@1430106933', '+%Y%m%d'], stdout=subprocess.PIPE)
>>>out,err = process.communicate()
>>>print out
20150426