将时区添加到python的当前时间戳中

时间:2017-01-10 02:49:32

标签: python python-2.7 python-3.x datetime

我使用以下代码并返回:

now = time.strftime("%c")
Out[196]: 
'Mon Jan  9 18:34:48 2017'

我们有一些读取时间戳的解析器,他们期望以下约定:

Mon Jan  9 17:02:40 PST 2017

主要区别在于我的代码缺少时区的秒数和年份。我使用过time.strftimedatetime库,但是我还是无法找到我正在寻找的时间戳的对齐方式。

我还以为我可以将时间戳插入或加入到我现有的错过时区的字符串中,但即便这样也不适用于我。

1 个答案:

答案 0 :(得分:2)

您可以使用datetime代替time来获取时区:

import datetime as dt
from tzlocal import get_localzone  # $ pip install tzlocal
local_tz = get_localzone()

now = dt.datetime.now(local_tz)
print now.strftime('%a %b %d %H:%M:%S %Z %Y')

请确保为datetime分配时区,因为naive时间戳不会显示时区。

以上产生:

Mon Jan 09 19:40:28 PST 2017