LINUX.ORG.RU

Ответ на: комментарий от conformist

да, я это читал. Но я тупой и у меня ничего не получается.

Что-то типа этого пытался:

print(datetime.datetime.strptime("Europe/Paris", '%Z')
ValueError: time data 'Europe/Paris' does not match format '%Z'

iljuase ★★★
() автор топика
Последнее исправление: iljuase (всего исправлений: 1)
Ответ на: комментарий от iljuase

так тоже не работает:

>>> a=datetime.datetime(tzinfo=pytz.timezone('Europe/Paris'), year=2000, month=1, day=1)
>>> a.strftime('%Z')
'LMT'

iljuase ★★★
() автор топика
Ответ на: комментарий от iljuase
In [1]: from pytz import timezone

In [2]: from datetime import datetime

In [3]: tz = timezone('Europe/Moscow')

In [4]: now = datetime.now(tz)

In [5]: now.strftime('timezone is %Z')
Out[5]: 'timezone is MSK'
conformist ★★★
()
Ответ на: комментарий от conformist

Красава! Просто взял и затащил! Вообще молорик! Долгих лет тебе жизни! Счастья, здоровья и всего самого наилучшего в 2019 году!

Уважаю. Благодарствую. Хороших выходных!

>>> tz_cet=pytz.timezone('Europe/Paris')
>>> now1=datetime.datetime.now(tz_cet)
>>> now1.strftime('timezone is %Z')
'timezone is CET'
>>> tz_hkt=pytz.timezone('Asia/Hong_Kong')
>>> now2=datetime.datetime.now(tz_hkt)
>>> now2.strftime('timezone is %Z')
'timezone is HKT'
iljuase ★★★
() автор топика
Ответ на: комментарий от iljuase

учти, что наименования часового пояса зависит от, например, времени года, и твой код в разное время будет выдавать разный результат:

timezone(«Europe/Paris»).tzname(datetime(2018,1,1))

'CET'

timezone(«Europe/Paris»).tzname(datetime(2018,6,1))

'CEST'

anonymous
()
Ответ на: комментарий от anonymous

Спасибо за ещё один способ!

Разное наименование — то, что нужно.

Я формирую письма для авторассылки иностранному заказчику в таком формате (для Linux-патичнга): https://i.imgur.com/dVBIPew.png

iljuase ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.