在 while 循环中遇到语法问题

Having issues with syntax in a while loop

我正在尝试编写带有 while 循环的 python 代码,其中用户必须猜测正确的数字才能退出循环。我已经看到有关如何正确编写代码 运行 的答案,但每次我尝试 运行 我的代码时,我都会收到语法错误。我不知道语法有什么问题,对我来说它看起来是正确的?请帮忙

这是我的代码:

secret_number = 777

guess_number = int(input("Enter your guess here: ")

while guess_number != secret_number:
    print("Ha ha! You're stuck in my loop!")
    guess_number = int(input("Enter your guess here: ")
    
print("Well done, muggle! You are free now.") 

这是错误:

 File "main.py", line 5

    while guess_number != secret_number:

        ^

SyntaxError: invalid syntax

您在

之后缺少右括号
int(input("..."))

为避免此类错误,请尝试使用 pycharmvisual studio 等环境,它们会让您注意到此类错误

除了遗漏 ) 的拼写错误外,您 重复 错误,大概是由于复制粘贴了相关行。通过对需要 运行 至少一次的循环使用以下习语来避免这种情况。

while True:
    guess_number = int(input("Enter your guess here"))
    if guess_number == secret_number:
        break
    print("Ha ha! You're stuck in my loop!")

print("Well done, muggle! You are free now.")

现在将至少收集一次输入,但循环可以在打印错误消息并开始下一次迭代之前终止。

有些语言有两种不同的循环结构来检查主体执行前后的条件。 Python 只有前体形式,因此您需要使用像 break 语句这样的显式流程控制来模拟 post-体形式。