Python で日時オブジェクトを秒に変換する
Python で日時オブジェクトを操作する場合、さまざまな目的で日時オブジェクトを秒に変換することが必要になることがよくあります。分析目的。ただし、tordinal() メソッドは、日付が異なる日付を区別するだけであるため、望ましい出力を提供しない可能性があります。
特に 1970 年 1 月 1 日の特定の日付について、datetime オブジェクトを秒に正確に変換するには、次のようにします。複数のオプションが利用可能です。他のすべての開始日については、2 つの日付間の時差を計算する必要があります。
1970 年 1 月 1 日の場合:
datetime.datetime.timestamp(): このメソッドは、Unix エポックからの秒数を直接返します。これは、1970 年 1 月 1 日の 00:00:00 UTC に相当します。
<code class="python">t = datetime.datetime(1970, 1, 1) seconds = t.timestamp()</code>
time.mktime(): time.mktime() 関数を使用して、datetime オブジェクトを Unix エポックからの秒数に変換することもできます。
<code class="python">import time t = datetime.datetime(1970, 1, 1) time_struct = t.timetuple() seconds = time.mktime(time_struct)</code>
その他の開始日の場合:
timedelta.total_seconds(): 2 つの datetime オブジェクトを減算すると、 timedelta オブジェクト。 timedelta の total_seconds() メソッドは、2 つの日付間の秒数を提供します。
<code class="python">t = datetime.datetime(2009, 10, 21, 0, 0) starting_date = datetime.datetime(1970, 1, 1) seconds = (t - starting_date).total_seconds()</code>
開始日は UTC (協定世界時) で指定する必要があることに注意してください。正確な結果を得るために。日時が UTC でない場合は、日時を変換するか、適切なオフセットを使用して tzinfo クラスをアタッチする必要があります。
以上がPython の日時オブジェクトを秒に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。