我是一名喜欢编码的学生,所以我开始使用codeacademy。我已经完成了Javascript,现在正在启动python。但我的代码不起作用。
#Make sure the function the_flying_circus returns True
def the_flying_circus(s):
if s == "yes":
return "blah"
elif s == "no" or "nai":
return "blegh"
else:
return "i do not understand"
请帮助
答案 0 :(得分:0)
也许这个:
def the_flying_circus(s):
if s == "yes":
return "blah"
elif s == "no" or s == "nai":
return "blegh"
else:
return "i do not understand"
下次请解释什么不起作用
答案 1 :(得分:0)
修复缩进。 python中的缩进是至关重要的。没有它,您的代码就不会运行。小心你的缩进并养成习惯。
函数内的任何代码必须缩进+1级深度:
def function(args):
... // statement 1
... // statement 2
elif s == "no" or "nai":
是有效代码,但在语义上不正确。您想要检查s
是 value1 还是 value2 。 python实际上理解的是:
elif (s == "no") or "nai":
这被解释为:s
等于no
或nai
等于True
?因为,在python中,非空字符串和容器的真值为True
。
这就是你需要的:
elif (s == "no") or (s == "nai"):
或者,甚至更好,
elif s in {"no", "nai"}:
in
运算符测试成员资格。
总而言之,这就是你所需要的:
def the_flying_circus(s):
if s == "yes":
return "blah"
elif s in {"no", "nai"}:
return "blegh"
else:
return "i do not understand"
print(the_flying_circus('yes')) # blah