2017-01-10 88 views
2

我使用下面的代碼,並將其返回:加入時區到當前時間戳蟒蛇

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

我們有一些解析器讀取時間戳,他們希望以下約定:

Mon Jan 9 17:02:40 PST 2017 

主要區別在於秒和年份之間我的代碼缺少時區。我玩過time.strftimedatetime庫,但是我仍然無法獲得我正在查找的時間戳的對齊方式。

我還以爲我可以插入或加入時間戳到我現有的字符串中缺少時區,但即使這不適合我。

回答

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 
+0

感謝這爲我工作。 – Matt