0

如果我有一个硬编码的日期,我如何将它与用户给出的日期进行比较?

我想最终比较一个人的生日,看看他们的年龄。有人可以指出我正确的方向吗?

4

1 回答 1

3

您需要使用 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
于 2012-10-16T21:51:19.880 回答