将时间转换为unix时间

use*_*693 2 python

可能重复:
将Unix中的unix时间戳字符串转换为可读日期

当我这样做时,time.time()我会得到类似的东西:1342648659.223746.如何将其转换为如下所示的unix时间:2012-07-18T21:42:00Z?

ear*_*arl 6

Python的标准日期时间模块非常适合各种日期/时间操作.

对于您的特定问题,该isoformat()方法很方便.例如,如果您已经拥有自Epoch以来的秒数(例如您的1342648659.223746):

>> from datetime import datetime
>> datetime.fromtimestamp(1342648659.223746).isoformat()
== '2012-07-18T23:57:39.223746'
Run Code Online (Sandbox Code Playgroud)

如果您只想要当前(UTC)时间,则ISO格式化:

>> datetime.utcnow().isoformat()
== '2012-07-19T00:06:45.724468'
Run Code Online (Sandbox Code Playgroud)

如果您绝对需要输出中的时区信息(Z例如,示例中为UTC),则您必须手动附加,或者回退使用strftime:

>> datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%SZ')
== '2012-07-18T22:11:05Z'
Run Code Online (Sandbox Code Playgroud)


Val*_*ior 5

您应该使用以下datetime模块:

>>> import datetime
>>> d = datetime.datetime.fromtimestamp(27654727.23)
>>> print d
1970-11-16 22:52:07.230000
Run Code Online (Sandbox Code Playgroud)

您可以将时间戳传递给fromtimestamp()函数.