问:我在解决这一问题时遇到了麻烦。我不知道如何计算日期之间的差异。我怀疑有一种更简单的方法可以尝试以下方法。对你的帮助表示感谢。
Birthdays.py
导入 datetime
生日= [ datetime 。日期时间(2012 ,4 ,29 ),日期时间。日期时间(2006年,8 ,9 ),日期时间。日期时间(1978年,5 ,16 ),日期时间。日期时间(1981年,8 ,15 ),日期时间。日期时间(2001年,7 ,
4 ),
日期时间。日期时间(1999年,12 ,30 )]是over_13 (日期):今天=日期时间。日期时间。今天()DIFF =今天-日期返回轮(DIFF 。秒/ 86400 )> = 4745
答:您当前的代码有两个问题:函数定义语法和timedelta对象的使用 diff
应使用关键字定义适当的函数def,并且函数名称中不得包含空格:
def is_under_13 (date ):
减去两个daatetime对象得到一个timedelta对象。在代码中,您将其称为diff。甲timedelta对象具有这些属性(从help(datetime.timedelta):
| 天
| 天数。
|
| 微秒
| 微秒数(> = 0且小于1秒)。
|
| 秒
| 秒数(> = 0且少于1天)。
请注意,该seconds属性仅包含少于1天的部分秒数。您需要使用该days属性。将此添加到您的代码:
def is_over_13 (date ):
#today = datetime.datetime.today()#<-不需要定义为全局diff =今天-日期返回diff 。天> = 4745