输入正确时代码出错

时间:2017-12-06 12:41:32

标签: python

我将一个简单的游戏作为我在Python中的第一个项目。我遇到了这个代码的问题:

BindingContext

当用户输入正确时,程序仍会再次询问输入..

如果输入正确,如何继续使用下一行代码?

1 个答案:

答案 0 :(得分:1)

问题是函数内部的变量invalid是函数的局部变量(因为你做了一个隐藏全局变量的赋值)并且不影响全局变量。

简单的解决方案是将invalid声明为全局内部函数start

def start():
    global invalid
    ...
    ...
    invalid=False

所以代码看起来像

invalid=True
def start():
    global invalid
    x=input('Enter the Keyword:')
    if ("m" == x) or ("M"==x):
        print('Correct!')
    elif x!='m' or x!='M':
        print('Invalid Input.')
        invalid=False
while invalid:
    start()