Tôi đang sử dụng mô-đun datetime của Python , tức là:
>>> import datetime
>>> today = datetime.datetime.now()
>>> print today
2009-03-06 13:24:58.857946
và tôi muốn tính ngày nhạy cảm của năm nhuận. ví dụ: hôm nay (ngày 6 tháng 3 năm 2009) là ngày thứ 65 của năm 2009. Đây là máy tính DateTime dựa trên web .
Dù sao, tôi thấy một hai lựa chọn:
A. Tạo một số number_of_days_in_month = [31, 28, ...], quyết định xem đó có phải là năm nhuận hay không, tổng hợp theo ngày theo cách thủ công.
B. Sử dụng datetime.timedeltađể đoán và sau đó tìm kiếm nhị phân cho đúng ngày trong năm:
>>> import datetime
>>> YEAR = 2009
>>> DAY_OF_YEAR = 62
>>> d = datetime.date(YEAR, 1, 1) + datetime.timedelta(DAY_OF_YEAR - 1)
Cả hai đều cảm thấy khá cồng kềnh & tôi có cảm giác ruột thịt rằng có một cách tính toán "Pythonic" hơn trong năm. Bất kỳ ý tưởng / đề xuất?
date.today()chứ không phảidatetime.now()cũng hoạt động và nhấn mạnh bản chất của hoạt động nhiều hơn một chút.