因此,对于我的学校作业,我必须建立一个老化程序,该程序需要计算老化天数(以天为单位的老化(。它需要在文本窗口中,而不是在图形窗口中。
我有这个:
Dayslived = (bob * 12 + (clock.month - month + 12)) * 30.4 + (clock.Day - day)
它是有效的,但如果您输入给程序一个月(如数字4=四月(,该月在当前月份之前,则它不起作用。
我该如何解决这个问题?
-
如果您需要一个python示例,请尝试以下操作:
from datetime import date result = date.today() - date(2001, 1, 1) print(result.days)
-
另一种方法——使用两个儒略日之间的差异:
def convert_to_julian_day(day, month, year): """ Convert Gregorian calendar date to Julian Day(JD). """ a = (14 - month) / 12 b = year + 4800 - a c = month + 12 * a - 3 jd = day + (153 * c + 2) / 5 + 365 * b + b / 4 - b / 100 + b / 400 - 32045 return int(jd) jd_today = convert_to_julian_day(22, 4, 2021) jd_born_date = convert_to_julian_day(1, 1, 2010) age_in_days = jd_today - jd_born_date print(age_in_days) # 4130 days
有关更详细的儒略日期算法,请阅读:儒略周期