首页 > 解决方案 > 当没有缩进问题时,JupyterLab 不断给出 else 的语法错误

问题描述

我正在尝试运行此代码,但 Jupyter 在 else 条件下不断给我以下语法错误。

  File "<ipython-input-24-beb6bcd9d77b", line 24
    else:
    ^
SyntaxError: invalid syntax

我之前运行了一个类似的代码,但也在那里工作,但我不明白这段代码有什么问题。

valid = True

while valid:
    
    if predators != 0 and prey != 0:

        preyCount.append(prey)
        predatorCount.append(predators)

        prey = prey * (1 + preyGrowth - predationRate * predators)
        predators = predators * (1 - predShrink + predFedBirthRate * preyCount[-1]
        
    else:
        
        valid = False

标签: pythonif-statementwhile-loopjupyter-notebook

解决方案


如评论中所述,如果您知道某行绝对是正确的语法,请始终查看上面的行。在这种情况下,predators = predators * (1 - predShrink + predFedBirthRate * preyCount[-1]末尾缺少括号 - 应该是predators = predators * (1 - predShrink + predFedBirthRate * preyCount[-1]))。这会导致 Python 认为您正在尝试执行以下操作:

predators = predators * (1 - predShrink + predFedBirthRate * preyCount[-1] else

这没有任何意义。


推荐阅读