Hãy gì sai với mã của tôi:Lấy ngày từ tuần số
import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d, "%Y-W%W")
print(r)
hiển thị "2013-01-01 00:00:00", Cảm ơn bạn.
Hãy gì sai với mã của tôi:Lấy ngày từ tuần số
import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d, "%Y-W%W")
print(r)
hiển thị "2013-01-01 00:00:00", Cảm ơn bạn.
Số tuần không đủ để tạo ngày; bạn cũng cần một ngày trong tuần. Thêm một mặc định:
import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d + '-0', "%Y-W%W-%w")
print(r)
Các mô hình -0
và -%w
kể phân tích cú pháp để chọn chủ nhật trong tuần đó. Kết quả đầu ra này:
2013-07-07 00:00:00
Bạn có thể chọn ngày trong tuần của riêng bạn, bất kỳ trường hợp nào phù hợp nhất với trường hợp sử dụng của bạn; các cơ sở mẫu %W
mẫu từ thứ hai, vì vậy có lẽ -1
là mặc định tốt hơn ở đây.
Xem phần strftime()
and strptime()
behaviour trong tài liệu, chú thích 4:
Khi sử dụng với các phương pháp
strptime()
,%U
và%W
chỉ được sử dụng trong các phép tính khi ngày trong tuần và năm được quy định.