Mengekstrak Tarikh daripada Nombor Minggu
Apabila cuba mendapatkan tarikh daripada nombor minggu menggunakan kod berikut:
import datetime d = "2013-W26" r = datetime.datetime.strptime(d, "%Y-W%W") print(r)
ralat berlaku kerana bilangan minggu sahaja tidak mencukupi untuk menjana tarikh tertentu. Untuk menyelesaikan masalah ini, hari tertentu dalam minggu juga mesti ditentukan.
Ubah suai kod dengan menambahkan hari lalai dalam minggu, seperti Isnin, pada rentetan:
import datetime d = "2013-W26" r = datetime.datetime.strptime(d + '-1', "%Y-W%W-%w") print(r)
Corak -1 dan -%w dalam rentetan format mengarahkan penghurai untuk memilih hari Isnin dalam minggu yang ditentukan. Kod yang dikemas kini ini kini mengeluarkan dengan betul:
2013-07-01 00:00:00
Adalah penting untuk ambil perhatian bahawa arahan %W menganggap hari Isnin sebagai hari pertama dalam minggu selaras dengan tingkah laku strftime() dan strptime() yang digariskan dalam dokumentasi. Sebarang penyelewengan daripada andaian ini boleh membawa kepada keputusan yang tidak dijangka.
Bagi kes di mana nombor minggu ialah tarikh minggu ISO, format %G-W%V-%u hendaklah digunakan sebaliknya. Walau bagaimanapun, ini memerlukan Python versi 3.6 atau lebih baru.
Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Tarikh dari Nombor Minggu dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!