strftimeを使用してPythonの日時をエポックに変換します

| | | |

エポックからの秒数が必要なUTCの時刻があります。

strftimeを使用して秒数に変換しています。例として2012年4月1日を取り上げます。

 >>> datetime.datetime(2012,04,01,0,0).strftime( "%s") "1333234800"  

2012年4月1日エポックからのUTCは1333238400ですが、上記では1時間異なる1333234800が返されます。

つまり、strftimeはシステム時間を考慮に入れており、どこかにタイムゾーンシフトを適用しているようです。日時は純粋にナイーブだと思いましたか?

どうすればそれを回避できますか?可能であれば、標準でない限り、他のライブラリをインポートしないようにします。 (移植性に懸念があります。)