是否可以得到此操作的反转:
import dateutil.tz
tz_ny = dateutil.tz.tz.gettz('America/New_York')
print(type(tz_ny))
print(tz_ny)
打印:
dateutil.tz.tz.tzfile
tzfile('/usr/share/zoneinfo/America/New_York')
如果tz_ny类型为tzfile,如何恢复'America / New_York'?
N.B。 tz_ny.tzname(datetime.datetime(2017,1,1))
如果日期是夏天,则返回'EST'或'EDT'。
答案 0 :(得分:0)
原来有一个受保护的成员变量....
tz_ny._filename
是
'/usr/share/zoneinfo/America/New_York'
答案 1 :(得分:0)
如果您只需要tzfile
中的时区名称,而不是完整路径,则可以例如做
import dateutil.tz
tz_ny = dateutil.tz.tz.gettz('America/New_York')
tz_ny_zone= "/".join(tz_ny._filename.split('/')[-2:])
print(tz_ny_zone)
这会让你
'America/New_York'