我在uni学习Python,并且被告知逻辑运算符和条件语句是如何工作的。我的问题是:有没有任何方法可以缩小像这样的代码?
if (day != "Sunday" and day != "Saturday" and day != "Friday" and day != "Thursday" and day != "Wednesday" and day != "Tuesday" and day != "Monday"):
print "That is not a day"
return 0
感谢任何建议,我理解上面的例子非常简单。
答案 0 :(得分:7)
您可以使用in
关键字。
if day not in ("Sunday", "Saturday", "Friday", "Thursday", "Wednesday", "Tuesday", "Monday"):
答案 1 :(得分:0)
因为如果日期为"Monday"
,则if
不会被评估,并且足以跳过if
中的所有其他条件,从而导致其不满意。这是因为short circuit evaluation。
当你写:
if (not a) and (not b)
这与(De Morgan's laws):
相同if not (a or b)
这不是你的意思。