繁体   English   中英

python意外的“预期缩进的块”错误

[英]Unexpected “expected an indented block” error on python

当我运行python程序时,意外弹出“预期缩进的块”错误,并不断弹出。 我的代码没有发现任何问题,请提供帮助。

def function
    if mode == 1:
    #code
    elif mode == 2:
    #code
    else:
    #code

while True:
    while True:
        #code here

每次键入:在该行的末尾,Python都希望在下一个块中缩进一个语句或表达式。

要创建“空”循环,请使用pass

def function():
    if mode == 1:
        pass
        # code will go here
    elif mode == 2:
        pass
        # code will go here
    else:
        pass
        # code will go here

while True:
    while True:
        pass
        # code here

错误发生在第一个“ While True”循环中

发生这种情况的原因是,在else: Python之后需要一个语句或表达式,并且由于其中的第一个是while True: :,而它并不缩进else:块下,因此会得到该异常。

首先,在def function之后必须有括号,然后是括号和冒号。 我不确定,但是您是否在if语句之后缩进。 那里的AI合法代码在您的评论中还是仅仅是评论? 如果没有代码,则由于在控制行后必须有一个缩进的块,这将引发错误。 例如,

def Function(mode):
    if mode == 0:
        print "mode is 0"
    elif mode == 1:
            print "mode is 1"
    else:
        print "unknown mode"
while True:
     while True:
         Function(5)
         #do What ever here

这不会引发异常

重要说明:确保您破坏了代码,否则它将永远消失。

我发现了问题,但还是要感谢。 Python需要您将代码放在if和else语句中,否则它将认为您忘记了其余代码。 但是谢谢!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM