Bagaimana untuk Mengekalkan Zon Masa dalam Penghuraian Tarikh/Masa dengan strptime()?
Menukar rentetan tarikh dan masa kepada objek Python adalah penting dalam pelbagai aplikasi. Walau bagaimanapun, fungsi strptime() lalai daripada pustaka datetime Python kadangkala boleh membuang maklumat zon waktu.
Isu:
Apabila menghuraikan rentetan tarikh/masa yang termasuk zon waktu, seperti sebagai "Selasa Jun 22 07:46:22 EST 2010," menggunakan fungsi strptime(), yang terhasil objek datetime mungkin tidak mempunyai sebarang maklumat zon waktu yang dikaitkan dengannya.
Penyelesaian:
Untuk mengekalkan maklumat zon waktu apabila menghuraikan rentetan tarikh/masa dengan strptime(), satu pilihan ialah untuk menggunakan perpustakaan python-dateutil.
Pustaka python-dateutil menyediakan penghurai yang lebih mantap yang boleh mengendalikan julat format tarikh/masa yang lebih luas dan mengenal pasti serta mengekalkan maklumat zon waktu secara automatik.
Berikut ialah contoh menggunakan python-dateutil:
from dateutil import parser date_string = "Tue Jun 22 07:46:22 EST 2010" datetime_obj = parser.parse(date_string) print(datetime_obj) # Output: datetime.datetime(2010, 6, 22, 7, 46, 22, tzinfo=tzlocal())
Dalam contoh ini, maklumat zon waktu (EST) secara automatik dikenal pasti dan dipelihara dalam objek datetime yang terhasil. Pendekatan ini lebih dipercayai dan mudah daripada menghuraikan dan memanipulasi rentetan tarikh/masa secara manual dengan strptime().
Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Zon Masa dalam Penghuraian Tarikh/Masa dengan strptime()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!