2011-05-03 148 views
2

例如设置在蟒蛇时区:如何使用os.environ

 
os.environ['TZ'] = "CST+06CDT,M4.1.0,M10.5.0" 

我能理解CST,06(UTC的偏移量??或GMT),CDT ==中部夏令时 但

M4.1.0和M10.5.0是什么意思?

这里是我发现:

出口TZ = EST05EDT

EST从下图拍摄。需要5个小时才能获得UTC,因此需要5个小时。而目前东部夏令时的EDT正在实施。

TZ =。

DST时区

0  BST for British Summer.         
    +400 ADT for Atlantic Daylight.        
    +500 EDT for Eastern Daylight.        
    +600 CDT for Central Daylight.        
    +700 MDT for Mountain Daylight.        
    +800 PDT for Pacific Daylight.        
    +900 YDT for Yukon Daylight.         
    +1000 HDT for Hawaii Daylight.        
    -100 MEST for Middle European Summer,      
      MESZ for Middle European Summer,     
      SST for Swedish Summer and FST for French Summer. 
    -700 WADT for West Australian Daylight.      
    -1000 EADT for Eastern Australian Daylight.     
    -1200 NZDT for New Zealand Daylight.       

有没有更简单的方法来找回我正确的时间?是的,只需取消TZ环境变量。

$ unset TZ 
    $ date 
    Sun Aug 22 10:17:35 EDT 2004 

请注意,即使TZ调整为夏令时,您是否会在5个月后得到正确的时间?夏时制何时生效?下面显示的TZ值只适用于dst,只能在正确的日期。例如,这个条目将于4月,第一周的凌晨2点生效,并于10月5日凌晨2点结束。注10.5.0代表十月份的第五周,而不是第五天。

$ export TZ=EST+5EDT,M4.1.0/2,M10.5.0/2 

回答

1

python manual

的TZ 环境变量的标准格式是(空白 添加为清楚起见):

STD偏移[DST [偏移 [,开始[/time],] [end] [/ time]]]]

Mm.nd第d天(0 < = d < = 6)或01的年的月米周N(1 < = N < = 5,1 < =米< = 12,其中5周装置 “最后d日在m月”,其可以 发生在任一第四或第五周的 )。第1周是第一天发生的第一周 。第0天 是星期天。

+0

我没有看,最多的Python文档,但到底是什么开始时间和结束时间涉及到M4.1.0,M10.5.0 – kamal 2011-05-03 18:23:24

+0

http://en.wikipedia.org/wiki/Daylight_saving_time – 2011-05-03 18:51:00

+0

我一直在寻找为...类似,但由于 出口TZ = EST05EDT 注意,即使TZ调整为夏令时,你会从现在5个月得到正确的时间?夏时制何时生效?下面显示的TZ值只适用于dst,只能在正确的日期。例如,这个条目将于4月,第一周的凌晨2点生效,并于10月5日凌晨2点结束。注10.5.0代表十月份的第五周,而不是第五天。 $ export TZ = EST + 5EDT,M4.1.0/2,M10.5.0/2 – kamal 2011-05-03 18:56:54