Python中的IndentationError

时间:2012-10-26 12:17:43

标签: python user-interface button indentation

我编写了以下程序,但不确定它有什么问题,它给出了:

File "Button_2.py", line 9
""" Initialise the Frame. """
                            ^
  IndentationError: expected an indented block

这是我的代码的图片:

enter image description here

这里发生了什么?

4 个答案:

答案 0 :(得分:5)

__init__中文档字符串的缩进已关闭(需要向右移动1个缩进级别)... root.mainloop()上的缩进也已关闭。

答案 1 :(得分:2)

你的缩进在第9行是错误的,而docstring应该向右缩进一级,如下所示:

def __init__(self, master):
    """ Initialise the Frame. """
    Frame.__init__(self, master)

原因是因为Python使用缩进来告诉解释器一个代码块属于哪个类,函数或结构(如循环或if..else语句)。它相当于Java中的花括号,您可以使用它来指定程序的类,方法或其他流控制部分。您可以在此处阅读更多信息:http://www.secnetix.de/olli/Python/block_indentation.hawk

P.S。反过来,root.mainLoop()应该向左缩进。这是因为它是主程序的一部分,其缩进级别为0。

答案 2 :(得分:1)

您应该按如下方式缩进文档字符串:

def __init__(self, master):
    """ Initialise the Frame. """
    Frame.__init__(self, master)

答案 3 :(得分:0)

第5行应缩进1个等级,与第6行对齐。