如何在Python中获取UTC日期字符串?

GJa*_*ain 25 python datetime utc

我想把utc日期字符串作为"YYYYMMDD"

现在我做以下事情,

nowTime =  time.gmtime();
nowDate = date(nowTime.tm_year, nowTime.tm_mon, nowTime.tm_mday)
print nowDate.strftime('%Y%m%d')
Run Code Online (Sandbox Code Playgroud)

我曾经做过:

datetime.date.today().strftime()
Run Code Online (Sandbox Code Playgroud)

但这给了我本地TZ的日期字符串

如何获取UTC日期字符串?

Mat*_*int 48

from datetime import datetime, timezone
datetime.now(timezone.utc).strftime("%Y%m%d")
Run Code Online (Sandbox Code Playgroud)

或者正如大卫主义指出的那样,这也会起作用:

from datetime import datetime
datetime.utcnow().strftime("%Y%m%d")
Run Code Online (Sandbox Code Playgroud)

我更喜欢第一种方法,因为它让你养成使用时区感知日期时间的习惯 - 但正如JF Sebastian指出的那样 - 它需要Python 3.2+.第二种方法适用于2.7和3.2分支.