Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menukar Objek Datetime kepada Detik dalam Python, Terutamanya Apabila Berurusan dengan Hari Berbeza?

Bagaimana untuk Menukar Objek Datetime kepada Detik dalam Python, Terutamanya Apabila Berurusan dengan Hari Berbeza?

Susan Sarandon
Susan Sarandonasal
2024-10-26 15:21:02311semak imbas

How to Convert Datetime Objects to Seconds in Python, Especially When Dealing with Different Days?

Menukar Objek datetime kepada Detik dalam Python

Apabila berurusan dengan data berasaskan masa dalam Python, ia sering menjadi perlu untuk mengira bilangan detik berlalu dari titik rujukan masa lalu tertentu. Sebagai contoh, pengiraan ini boleh terbukti berguna dalam menentukan tempoh antara dua peristiwa atau membandingkan cap masa. Artikel ini meneroka kaedah yang tersedia dalam Python untuk menukar objek datetime kepada saat, khususnya menangani isu biasa yang dihadapi apabila bekerja dengan hari yang berbeza.

Untuk mengira bilangan saat sejak masa tetap pada masa lalu, satu pilihan ialah untuk menggunakan kaedah tordinal(). Walau bagaimanapun, kaedah ini hanya membezakan antara tarikh dengan hari yang berbeza-beza. Untuk pengiraan yang lebih tepat, pendekatan berbeza diperlukan.

Untuk tarikh istimewa seperti 1 Januari 1970, berbilang pilihan tersedia. Walau bagaimanapun, untuk mana-mana tarikh mula yang lain, adalah perlu untuk mengira perbezaan antara dua tarikh dalam beberapa saat. Nasib baik, Python menawarkan objek timedelta yang mudah yang mewakili perbezaan tarikh dan masa. Sejak Python 2.7, objek timedelta mempunyai fungsi total_seconds(), yang boleh digunakan untuk mendapatkan semula jumlah saat berlalu.

<code class="python">import datetime
t = datetime.datetime(2009, 10, 21, 0, 0)
starting_date = datetime.datetime(1970, 1, 1)
elapsed_seconds = (t - starting_date).total_seconds()
print(elapsed_seconds)  # Output: 1256083200.0</code>

Adalah penting untuk memastikan kedua-dua tarikh berada dalam zon waktu yang sama, biasanya UTC . Oleh itu, jika objek datetime belum ditentukan dalam UTC, ia mesti ditukar sebelum melakukan pengiraan.

Ringkasnya, menukar objek datetime kepada saat melibatkan penggunaan kaedah yang sesuai dan mempertimbangkan perbezaan zon waktu. Dengan memanfaatkan kaedah tordinal(), objek timedelta dan menggunakan penukaran yang diperlukan, adalah mungkin untuk menentukan dengan tepat bilangan saat berlalu dari titik masa tertentu.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Objek Datetime kepada Detik dalam Python, Terutamanya Apabila Berurusan dengan Hari Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn