转换为unix时间戳Python

2024-04-24 20:09:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将now的日期戳转换为Unix时间戳,但是下面的代码似乎已命中,但随后只是跳到我的应用程序的末尾,因为in似乎不喜欢time.mktime部分。

from datetime import datetime
import time

now = datetime.now()
toDayDate = now.replace(hour=0, minute=0, second=0, microsecond=0)
newDate = time.mktime(datetime.strptime(toDayDate, "%Y-%m-%d %H:%M:%S").timetuple())
print(newDate)

Tags: 代码infromimport应用程序datetimetime时间
2条回答

改变

newDate = time.mktime(datetime.strptime(toDayDate, "%Y-%m-%d %H:%M:%S").timetuple())

newDate = time.mktime(datetime.timetuple())

举个例子:

from datetime import datetime
from time import mktime
t = datetime.now()
unix_secs = mktime(t.timetuple())

得到unix_secs = 1488214742.0

您可以在Python 3中使用datetime.timestamp()来获取POSIX时间戳,而不是使用now()

返回的值是float类型。timestamp()依赖于datetime,而后者又依赖于mktime()。但是,datetime.timestamp()支持更多的平台,并且具有更广泛的值范围。

相关问题 更多 >