43

我正在尝试将 utc 日期字符串作为“YYYYMMDD”

现在我执行以下操作,

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

我曾经做:

datetime.date.today().strftime()

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

如何获取 UTC 日期字符串?

4

1 回答 1

83
from datetime import datetime, timezone
datetime.now(timezone.utc).strftime("%Y%m%d")

或者正如大卫主义指出的那样,这也可以:

from datetime import datetime
datetime.utcnow().strftime("%Y%m%d")

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

于 2013-07-23T22:44:04.733 回答