Python的tzinfo引用fi

2024-04-25 07:25:58 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我设置的tzinfo。你知道吗

tz = {'CST' : -6*3600, 'BST' : +1*3600, 'EST' :-5*3600,'MST':-7*3600,'PST':-8*3600, 'CDT' :-5*3600, 'EDT' : -4*3600, 'PDT':-7*3600}

dt = parser.parse(date,default = DEFAULT_DATE, tzinfos=tz)

我想写美国和欧洲的所有时区。我不想手工做。有没有办法使这个过程自动化。你知道吗


Tags: defaultparserdateparsedttzesttzinfo
1条回答
网友
1楼 · 发布于 2024-04-25 07:25:58

使用pytz包:

tzinfos = {}
for timezone in pytz.all_timezones:
   if timezone.startswith(("Europe", "US")):

       tz = pytz.timezone(timezone)
       start = datetime(2013, 1, 1)
       # loop over the whole year to catch daylight savings, got to be a better way
       for days_delta in range(356):
           d_time = tz.normalize((start + timedelta(days=days_delta)).replace(tzinfo=tz))
           tzinfos[d_time.tzname()] = d_time.utcoffset().total_seconds()
print tzinfos

正确处理当前不活动的时区是留给读者的练习。你知道吗

相关问题 更多 >