Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Menukar Objek Datetime Python dengan Tepat kepada Masa Epoch?

Bagaimanakah Saya Boleh Menukar Objek Datetime Python dengan Tepat kepada Masa Epoch?

Patricia Arquette
Lepaskan: 2024-11-20 12:49:14
asal
949 orang telah melayarinya

How Can I Accurately Convert Python Datetime Objects to Epoch Time?

Menukar Python Datetime kepada Epoch dengan strftime: Membongkar Percanggahan Zon Waktu

Untuk mendapatkan bilangan saat sejak zaman daripada tarikh tarikh UTC, pembangun sering bergantung pada fungsi strftime. Walau bagaimanapun, seperti yang ditunjukkan dalam soalan ini, menggunakan strftime('%s') untuk menukar datetime kepada epoch boleh menghasilkan keputusan yang tidak tepat disebabkan pelarasan zon waktu.

Mengapa Percanggahan?

Secara lalai, strftime menggabungkan zon waktu sistem ke dalam pengiraannya. Akibatnya, ia menggunakan anjakan zon waktu tersirat, yang membawa kepada penukaran zaman yang salah untuk masa tarikh dalam zon waktu tertentu.

Penyelesaian untuk Penukaran Tepat

Untuk mengelakkan ketidaktepatan yang disebabkan oleh zon waktu , pertimbangkan pendekatan alternatif ini:

  • Python 3.3 dan Ke Atas: Gunakan kaedah cap waktu(), yang mengembalikan cap masa yang tepat dalam saat titik terapung sejak zaman itu, tanpa pelarasan zon waktu .
datetime.datetime(2012, 4, 1, 0, 0).timestamp()
Salin selepas log masuk
  • Python 3.2 dan Terdahulu: Kira secara eksplisit jumlah saat sejak zaman itu.
(datetime.datetime(2012, 4, 1, 0, 0) - datetime.datetime(1970, 1, 1)).total_seconds()
Salin selepas log masuk

Awas terhadap Penggunaan strftime('%s')

Adalah penting untuk ambil perhatian bahawa penggunaan strftime('%s') tidak digalakkan untuk penukaran zaman. Ini kerana strftime tidak menyokong '%s' secara eksplisit sebagai hujah pemformatan. Keserasiannya berpunca daripada pelaksanaan strftime sistem asas, yang memperkenalkan gelagat khusus zon waktu. Ketidakkonsistenan ini boleh membawa kepada hasil yang salah, menjadikannya kaedah yang tidak boleh dipercayai untuk penukaran zaman mudah alih.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Objek Datetime Python dengan Tepat kepada Masa Epoch?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan