缩进错误:预期缩进块python 3.6

时间:2017-06-18 06:37:50

标签: python indentation

我是python中的新手。我想返回字符串"关闭"如果s==yes。请告诉我下面的代码可能有什么问题。

def shut_down(s):
... if s == "yes":
  File "<stdin>", line 2
    if s == "yes":
     ^
IndentationError: expected an indented block

3 个答案:

答案 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"

Indentation Error Demo

def shut_down(s):
    print "No Indentation Error"

No Error Demo

答案 2 :(得分:0)

tl; dr尝试在第二行的开头添加4个空格,如下所示:

def shut_down(s):    
    if s == "yes"

建议在Python中使用4个空格进行缩进,制表或不同数量的空格可能有效,但也有时会引起麻烦。更多内容可以在PEP8上阅读。

我不确定你是如何尝试缩进第二行的,但重要的是要注意大多数现代Python IDE会自动用4个空格替换你的标签,如果你再使用它会很棒标签(我个人使用PyCharm,但IDLE也这样做。)