以下行是什么意思?
return now - datetime.timedelta(days=1) <= self.pub_date < now
位于以下链接 https://docs.djangoproject.com/en/1.6/intro/tutorial05/
答案 0 :(得分:3)
这称为链式comparison,大致相当于:
now - datetime.timedelta(days=1) <= self.pub_date and self.pub_date < now
来自docs:
x < y <= z
相当于x < y
和y <= z
,但y
除外 仅评估一次(但在两种情况下,z都不进行评估 发现x < y
是假的。)
此处now
是当前时间,now - datetime.timedelta(days=1)
是当前时间减去一天,因此,如果发布日期位于此时间间隔内,则上述表达式将为True
。
答案 1 :(得分:2)
如果self.pubdate
过去,则返回true,但最多1天。
在此上下文中,如果项目(True
)最近发布,则返回self
是一个布尔表达式,否则为False
。