Когда происходит `datetime.now (pytz_timezone)`?

delorean документы покажи этот путьполучить текущее время в заданном часовом поясе с помощьюdatetime:

from datetime import datetime
from pytz import timezone

EST = "US/Eastern"
UTC = "UTC"

d = datetime.utcnow()
utc = timezone(UTC)
est = timezone(EST)
d = utc.localize(d)
d = est.normalize(EST)

и сравните его с кодом на основе делориана:

from delorean import Delorean

EST = "US/Eastern"

d = Delorean(timezone=EST)

я верю datetime Пример должен быть записан как:

from datetime import datetime
import pytz

eastern_timezone = pytz.timezone("US/Eastern")
d = datetime.now(eastern_timezone)

это более кратко.

Есть ли случаи, когда последний пример кода не работает, а первый продолжает работать?

Обновить: текущий пример:

from datetime import datetime
import pytz

d = datetime.utcnow()
d = pytz.utc.localize(d)

est = pytz.timezone('US/Eastern')
d = est.normalize(d)
return d

это все еще слишком многословно.

Вопрос все еще стоит:Вам нужен явный туда-обратно через UTC иtz.normalize() или вы можете использоватьdatetime.now(tz) вместо?

Ответы на вопрос(1)

Ваш ответ на вопрос