Часовой пояс для Китая не работает в Python Стрелка

arrow.get('2016-01-01')
arrow.get(datetime.now(), 'US/Pacific')

arrow.get(datetime.now(), 'China')
arrow.get(datetime.now(), 'CT')
arrow.get(datetime.now(), 'CST')

Итак, первые два утверждения работают, но остальные 3, которые пытаются перевести время в Китай, не делают этого. Как это исправить?

2 ответа

Решение

Попробуйте использовать Азию / Шанхай или zh-cn в качестве строки часовых поясов.

полная версия решения

используйте pip для установки Pythonarrowупаковка

      $ pip install -U arrow
  1. использовать PythonREPL
      $ python
>>> import arrow
>>> from datetime import datetime
>>> now = arrow.get(datetime.now(), 'Asia/Shanghai')
>>> print("now =", now)

>>> now = 2023-04-13T00:01:45.222910+08:00

>>> quit()

  1. бегатьtest.pyкак сценарий оболочки
      $ touch test.py

$ vim ./test.py

$ chmod +x ./test.py
# now = 2023-04-13T00:01:45.222910+08:00

test.py

      #!/usr/bin/env python3
# coding: utf8

import arrow
from datetime import datetime

# ✅
now = arrow.get(datetime.now(), 'Asia/Shanghai')
print("now =", now)

# ❌
# arrow.get(datetime.now(), 'zh-cn')

скриншоты

ссылки

https://arrow.readthedocs.io/en/latest/

Другие вопросы по тегам