Saya mencoba proses yang sama kecuali untuk string input saya tidak punya tahun, jadi sepertinya '2405'. Secara default, tahun dianggap sebagai 1900. Masalah terjadi ketika menguraikan tanggal Feb seperti '2902'. Saya mendapatkan kesalahan ini ValueError: day is out of range for month. Tidak yakin bagaimana saya bisa mengatur tahun default saat parsing.
Traceback(most recent call last):File"<stdin>", line 1,in<module>File"/usr/local/lib/python2.7/_strptime.py", line 308,in _strptime
format_regex =_TimeRE_cache.compile(format)File"/usr/local/lib/python2.7/_strptime.py", line 265,in compile
return re_compile(self.pattern(format), IGNORECASE)File"/usr/local/lib/python2.7/re.py", line 194,in compile
return _compile(pattern, flags)File"/usr/local/lib/python2.7/re.py", line 251,in _compile
raise error, v # invalid expression
sre_constants.error: redefinition of group name 'H'as group 7; was group 4
2015-07-20 09: 46: 55 + 00: 00 saya memiliki data seperti ini, Bagaimana cara mendapatkan objek tanggal?
Hardik Gajjar
Gunakan modul re (regular expression) untuk mengubah data Anda dari "2015-07-20 09: 46: 55 + 00: 00" menjadi "2015-07-20T09: 46: 55-00: 00". Kemudian gunakan dateutil.parse untuk mendapatkan objek tanggal.
Schopenhauer
1
Terima kasih, sebenarnya masalahnya adalah objek tipe dict dan saya hanya mendapatkan solusi menggunakan dict.get using
Hardik Gajjar
2
Gagasan lain adalah dengan membaca manual docs.python.org/3/library/… dan perhatikan bahwa% B adalah singkatan dari "Month as local name." yang seperti "Januari" atau "Desember" jadi "02" tidak akan diuraikan.
Balik
1
String format tanggal dalam hal ini salah, seharusnya% m bukan% B
theannouncer
24
Jika Anda malas dan tidak ingin bertarung dengan string literal, Anda bisa menggunakan parsermodul.
1900
. Masalah terjadi ketika menguraikan tanggal Feb seperti '2902'. Saya mendapatkan kesalahan iniValueError: day is out of range for month
. Tidak yakin bagaimana saya bisa mengatur tahun default saat parsing.sumber
Pertanyaan terkait langsung:
Bagaimana jika Anda memilikinya
dan Anda mendapatkan:
dan Anda mencoba:
tetapi Anda masih mendapatkan traceback di atas.
Menjawab:
sumber
Jika Anda malas dan tidak ingin bertarung dengan string literal, Anda bisa menggunakan
parser
modul.Hanya catatan tambahan , karena kami mencoba mencocokkan
any
representasi string, ini 10x lebih lambat daripadastrptime
sumber
Monday, June 03, 2019
Anda memiliki string tanggal seperti ini, "24052010" dan Anda ingin objek tanggal untuk ini,
cus_date ini akan memberi Anda objek tanggal.
Anda dapat mengambil string tanggal dari objek tanggal Anda menggunakan ini,
sumber
Ada perpustakaan lain yang disebut
arrow
sangat bagus untuk membuat manipulasi pada tanggal python.sumber
Gunakan modul waktu untuk mengonversi data.
Cuplikan kode:
sumber