2017-09-13 55 views
2

我的Python代码在elif之后立即抛出expected indented block错误。Python引发缩进块错误。没有看到它

我在查看缩进错误的位置时遇到了问题。

我做了什么样的缩进错误?

def expandProcedure(node, queue): 
    successors = [] 
    n = 4 
    while (n > 0): 
     parent = node 
     depth = node[2] + 1 
     pathCost = node[3] + 1 
     newState = testState(node[0], n) 

     if newState == 0: 
      ## do nothing 
     elif inQueue(newState[0], queue): 
      #do nothing 

     else: 
      s = makeNode(newState, parent, depth, pathCost) 
      successors.insert(0, s) 

    n = n - 1 

return successors 
+0

'##做nothing'不计,所以你有一个空块,如果你不想做什么用'pass' – inet123

回答

2

您不能有空块。使用(非)命令:

if newState == 0: 
    pass 
elif inQueue(newState[0], queue): 
    pass 
0

在Python你不能让空块。至少把pass那里,如果你想真正的什么都不做的:

if newState == 0: 
    pass 
elif newState != 0: 
    pass 
+0

啊,我明白了,非常感谢! –