我是python中的新手。我想返回字符串"关闭"如果s==yes
。请告诉我下面的代码可能有什么问题。
def shut_down(s):
... if s == "yes":
File "<stdin>", line 2
if s == "yes":
^
IndentationError: expected an indented block
答案 0 :(得分:2)
我假设你是Python函数定义的初学者,定义函数的正确方法是:
#function definition
def shut_down(s):
if s=="yes" :
print("right")
return
shut_down("yes") #calling the function
在函数调用期间,您将“是”分配给 s 变量。
答案 1 :(得分:0)
提供空格或标签。 Python强制缩进。 ...并不意味着光标向前移动,而是你正在编写一个块。
复制以下两个代码段并尝试运行
def shut_down(s):
print "Indentation Error"
def shut_down(s):
print "No Indentation Error"
答案 2 :(得分:0)
tl; dr尝试在第二行的开头添加4个空格,如下所示:
def shut_down(s):
if s == "yes"
建议在Python中使用4个空格进行缩进,制表或不同数量的空格可能有效,但也有时会引起麻烦。更多内容可以在PEP8上阅读。
我不确定你是如何尝试缩进第二行的,但重要的是要注意大多数现代Python IDE会自动用4个空格替换你的标签,如果你再使用它会很棒标签(我个人使用PyCharm,但IDLE也这样做。)