Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah Kita Boleh Mempercepatkan Penghuraian Tarikh dalam Python?

Bagaimanakah Kita Boleh Mempercepatkan Penghuraian Tarikh dalam Python?

Barbara Streisand
Barbara Streisandasal
2024-11-04 04:38:01578semak imbas

How Can We Accelerate Date Parsing in Python?

Mempercepatkan Penghuraian Tarikh dengan strptime

Menghuraikan tarikh dalam format 'YYYY-MM-DD' menggunakan datetime.datetime.strptime() Python fungsi boleh menjadi halangan prestasi apabila mengendalikan jumlah kurma yang besar. Artikel ini meneroka alternatif yang cekap untuk mempercepatkan proses penghuraian tarikh.

Kaedah strptime() standard bergantung pada set spesifikasi format yang komprehensif untuk mentafsir rentetan tarikh. Walaupun fleksibiliti ini berharga, ia memperkenalkan overhed pengiraan. Untuk mengurangkan ini, pendekatan yang lebih diperkemas disyorkan apabila berurusan dengan tarikh dalam format yang konsisten.

Penyelesaian yang dicadangkan melibatkan menghuraikan rentetan tarikh secara manual ke dalam komponen konstituennya (tahun, bulan, hari) menggunakan keupayaan manipulasi rentetan Python . Dengan mengelakkan spesifikasi format kompleks strptime(), peningkatan prestasi yang ketara boleh dicapai.

Sebagai contoh konkrit, penanda aras yang membandingkan strptime() dengan pendekatan penghuraian manual menghasilkan hasil yang luar biasa:

datetime.datetime.strptime(a, '%Y-%m-%d').date()       # 8.87us

datetime.date(*map(int, a.split('-')))                 # 1.28us

Kaedah penghuraian manual mengatasi prestasi strptime() dengan faktor 7, dengan berkesan menangani kebimbangan prestasi.

Pengoptimuman lanjut boleh dilakukan dengan menggunakan penghirisan rentetan eksplisit:

datetime.date(int(a[:4]), int(a[5:7]), int(a[8:10]))   # 1.06us

Kaedah ini , memanfaatkan fakta bahawa setiap komponen tarikh menduduki kedudukan tetap dalam rentetan, mencapai faktor 8 peningkatan yang mengagumkan berbanding strptime().

Dengan menggunakan pendekatan penghuraian manual atau versi dipertingkatkannya dengan penghirisan eksplisit, ia menjadi sesuai untuk memproses jumlah tarikh yang besar dalam format 'YYYY-MM-DD' dengan kelajuan yang dipertingkatkan dengan ketara.

Atas ialah kandungan terperinci Bagaimanakah Kita Boleh Mempercepatkan Penghuraian Tarikh dalam Python?. 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