这是我写的一个函数。如果我输入星期三作为星期几,程序就无法访问它来执行打印代码。这行代码的正确语法是什么,才能使星期三正确工作?
def day(dayOfWeek):
if dayOfWeek == ("Monday" or "Wednesday"):
print("Poetry: 6-7:15 in Chem 131")
发布于 2011-01-25 05:56:53
代码中的表达式("Monday" or "Wednesday")
的计算结果始终为"Monday"
。运算符or
是在其第一个操作数evaluates to True
时首先尝试的逻辑or
。如果是,则返回第一个操作数,否则返回第二个操作数。因为"Monday"
是"trucy",所以您的比较总是与"Monday"
进行比较。
改用下面的代码:
if dayOfWeek in ("Monday", "Wednesday"):
print("Poetry: 6-7:15 in Chem 131")
发布于 2011-01-25 05:59:32
Sven给出的答案是可行的,可能是最好的方法,但为了演示如何正确使用or
,您必须这样做:
if (dayOfWeek == "Monday") or (dayOfWeek == "Wednesday"):
发布于 2011-01-25 05:59:53
如果您想使用==
if dayOfWeek == "Monday" or dayOfWeek == "Wednesday":
print("Poetry: 6-7:15 in Chem 131")
https://stackoverflow.com/questions/4787645
复制相似问题