Cara Menghuraikan Tarikh dan Masa Berformat ISO 8601 dalam Python
Fungsi strptime Python tidak sesuai untuk menghuraikan rentetan tarikh dan masa berformat ISO 8601. Untuk penyelesaian yang lebih mudah, pertimbangkan fungsi isoparse daripada pakej python-dateutil.
Fungsi isoparse
isoparse direka khusus untuk menghuraikan rentetan datetime ISO 8601 seperti "2008 -09-03T20:56:35.450686Z". Ia juga mengendalikan format tarikh dan masa ISO 8601 yang lain, seperti format tanpa UTC mengimbangi atau hanya mewakili tarikh.
import dateutil.parser datetime_object = dateutil.parser.isoparse('2008-09-03T20:56:35.450686Z')
Perbandingan dengan datetime.datetime.fromisoformat Python
Dalam Python 3.7 dan lebih awal, datetime.datetime.fromisoformat bukanlah format ISO 8601 yang lengkap penghurai. Ia hanya menyokong subset format ISO 8601 yang sah. Dalam Python 3.11, fromisoformat menyokong hampir semua rentetan ISO 8601 yang sah.
Mengendalikan Kesalahan Baca
isoparse dan penghurai lembut yang lain berpotensi salah membaca rentetan tertentu. Untuk penghuraian yang lebih ketat, pertimbangkan untuk menggunakan pustaka yang berbeza atau melaksanakan logik penghuraian anda sendiri.
Kesimpulan
Fungsi isoparse daripada python-dateutil menyediakan cara yang mudah dan komprehensif untuk menghuraikan rentetan tarikh dan masa berformat ISO 8601 dalam Python. Ia menyokong pelbagai format dan mengendalikan offset UTC dengan betul.
Atas ialah kandungan terperinci Bagaimana Menghuraikan Tarikh dan Masa ISO 8601 dengan Mudah dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!