明確にするために、これは python 2.6 です。私は pytz を使用しています。
これは、米国のタイムゾーンのみを扱うアプリケーション用です。日付 (今日) を固定し、PST のみで午後 8 時と午後 11 時の UNIX タイムスタンプ (エポック時間) を取得できる必要があります。
これは私を夢中にさせています。
> pacific = pytz.timezone("US/Pacific")
> datetime(2011,2,11,20,0,0,0,pacific)
datetime.datetime(2011, 2, 11, 20, 0, tzinfo=<DstTzInfo 'US/Pacific' PST-1 day, 16:00:0 STD>)
> datetime(2011,2,11,20,0,0,0,pacific).strftime("%s")
'1297454400'
zsh> date -d '@1297454400'
Fri Feb 11 12:00:00 PST 2011
そのため、タイムゾーンを設定し、そのタイムゾーンで日時を作成していても、UTC として作成してから変換しています。計算をしようとすると UTC が 1 日先になるため、これはより大きな問題です。
今日の午後 8 時 PST のタイムスタンプを生成する簡単な (または少なくとも理にかなった) 方法はありますか?
(明確にするために、データベースのタイムスタンプや一般的なストレージなど、ほとんどの状況で UTC を使用する価値を理解しています。これはそのような状況の 1 つではないため、特に PST の夜のタイムスタンプが必要であり、UTC を使用する必要はありません。入ります。)