14

現在DSTを使用して変数に格納されている特定のタイムゾーンかどうかをPythonスクリプトで確認するにはどうすればよいですか? 私のサーバーはUTCに設定されています。だから私は例えば言った

zonename = Pacific/Wallis

現在 DST を使用しているかどうかについてクエリを実行し、true または false のいずれかの応答が返されるようにしたいと考えています。

4

2 に答える 2

19
from pytz import timezone
from datetime import datetime

zonename = "Pacific/Wallis"
now = datetime.now(tz=timezone(zonename))
dst_timedelta = now.dst()
### dst_timedelta is offset to the winter time, 
### thus timedelta(0) for winter time and timedelta(0, 3600) for DST; 
### it returns None if timezone is not set

print "DST" if dst_timedelta else "no DST"

代わりに使用することです:

now.timetuple().tm_isdst 

0DST がない場合、DST の場合、1および-1タイムゾーンが設定されていない場合の 3 つの値のいずれかを指定できます。

于 2013-06-18T16:01:18.813 に答える