Как получить строку даты UTC в Python? - программирование
Подтвердить что ты не робот

Как получить строку даты UTC в Python?

Я пытаюсь получить строку даты 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?

4b9b3361

Ответ 1

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

Или, как указал Давидонизм, это также сработало бы:

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

Я предпочитаю первый подход, так как он привык использовать время, известное в часовом поясе, но, как указал J.F.Sebastian, для него требуется Python 3.2+. Второй подход будет работать как в ветвях 2.7, так и в 3.2.