SyntaxError:使用input和raw_input进行语法分析时出现意外的EOF

时间:2017-10-12 18:37:40

标签: python python-3.x syntax-error eof

我目前正在制作一款有趣的密码破解游戏,它向您展示了强力破解的过程以及它是如何工作的。秘密地说,这只是给我的学校留下深刻印象的IT部门,但除此之外。我只是在程序开发的开始,我已经遇到了一个错误,这是一个非常常见的错误。如果它很常见,为什么我找不到它的解决方法我在这里问你。好吧,大多数线程都是过时的或者不适合我的具体情况。

以下是导致我出现此问题的代码:

while beginning_input == ' ':
    ("Please select which difficulty you would like the password to be > ")
    beginning_input = raw_input
    if beginning_input != ("EASY", "MEDIUM", "HARD"):

第1行和第4行不相关,但仍然将它们扔在那里。在它的基础上,我试图询问运行它的人他们想要密码的难度......但是一旦我在命令提示符中运行此代码,我就会收到此错误。

  File "passwordcrackinggame.py", line 8
                                                     ^
SyntaxError: unexpected EOF while parsing

非常感谢您解决此问题的任何帮助,谢谢。需要任何信息?不要呻吟,只要问我。

1 个答案:

答案 0 :(得分:1)

您的代码顺序错误。

raw_input是一个函数

您需要致电

raw_input(textToShowTheUser)

在你的情况下 会是

raw_input("Please select which difficulty you would like the password to be > ")

(A, B, C)是一个元组

你正在做这个

if beginning_input != ("EASY", "MEDIUM", "HARD"):

但仅当beggining_input("EASY", "MEDIUM", "HARD")时才会出现这种情况。它是一个元组文字,不是比较多个值的简单方法。

如果你想检查另一个 ,你可以使用in运算符,因为你要检查它是不是元组,您将要使用not运算符否定结果。

if not beginning_input in ("EASY", "MEDIUM", "HARD"):

压痕

我知道这是一个错字,但缩进必须准确。结合上面的所有内容,这就是最终代码的样子。

begginning_input = " "
while beginning_input == ' ':
     beginning_input = raw_input("Please select which difficulty you would like the password to be > ")
     if not beginning_input in ("EASY", "MEDIUM", "HARD"):