Saya ingin mengurai string tanggal dan memanipulasi tahun, bulan, tanggal jika saya mendapatkan '00' untuk bulan atau hari atau dalam kasus di mana saya mendapatkan hari di luar kemungkinan hari pada tahun/bulan itu. Diberikan '00-00-2012' atau '31-02-2020', saya mendapatkan ValueError. Yang saya inginkan adalah menangkap kesalahan dan kemudian mengubah kesalahan pertama menjadi '01-01-2012' dan yang terakhir menjadi '29-02-2020'. Tidak ada hasil di Google sejauh ini.
Klarifikasi: Saya menggunakan coba/kecuali/ValueError... yang saya inginkan adalah mengurai tahun, bulan, hari dan memperbaiki hari atau bulan ketika mereka mengalami ValueError... tanpa harus membuat kode sendiri penguraian dan ekspresi reguler ... yang menggagalkan tujuan penggunaan perpustakaan sejak awal.
# Try dateutjil
blah = dateutil.parser.parse(date_string, fuzzy=True)
print(blah)
# Try datetime
date_object = datetime.strptime(date_string, date_format)
return_date_string = date_object.date().strftime('%Y-%m-%d')