将字符串“GMT+5:30”转换为时区(如Aisa/Kolkata),而不检查python中的datetime.datetime.now()
now = datetime.datetime.astimezone(Time_Zone).tzname() # current time
print(now)
print(type(now))
utc_offset = datetime.timedelta(hours=5, minutes=30) # +5:30
print(utc_offset)
for tz in map(pytz.timezone, pytz.all_timezones_set):
if (now.astimezone(tz).utcoffset() == utc_offset):
print(tz.zone)
要查找给定UTC偏移量的匹配时区,必须指定一个日期,因为时区的UTC偏移量随时间而变化,并且在某些时段内可能有DST。时区和DST源于政治决策,所以它不像拼凑Python脚本那么容易
下面是一个使用
dateutil
查找UTC+5:30时区的示例:您可以选择任何日期替换
datetime.datetime.now
使用
pytz
得到相同的结果:注意
pytz
在获取UTC偏移量方面更有效,但是我更喜欢dateutil
,因为它与Python标准lib/datetime
对象的集成更好相关问题 更多 >
编程相关推荐