如果我有一个硬编码的日期,我如何将它与用户给出的日期进行比较?
我想最终比较一个人的生日,看看他们的年龄。有人可以指出我正确的方向吗?
您需要使用 Python 的标准库datetime
模块来解析“用户给出的日期”并将其转换为一个datetime.date
实例,然后从当前日期中减去它,datetime.date.today()
. 例如:
>>> birthdate_str = raw_input('Enter your birthday (yyyy-mm-dd): ')
Enter your birthday (yyyy-mm-dd): 1981-08-04
>>> birthdatetime = datetime.datetime.strptime(birthdate_str, '%Y-%m-%d')
>>> birthdate = birthdatetime.date() # convert from datetime to just date
>>> age = datetime.date.today() - birthdate
>>> age
datetime.timedelta(11397)
age
是一个datetime.timedelta
实例,11397 是他们的年龄(以天为单位)(可直接通过 获得age.days
)。
要获得他们的年龄,您可以执行以下操作:
>>> int(age.days / 365.24)
31