随机Python语法错误



我的代码不断出现随机语法错误!我使用的是python 3.3.2

def modestart():
modetype = int(input"""Select a Game Mode:
1 - Standard Selection Mode
2 - Ordered Mode
3 - Random Shuffle Mode!
Or press any other key to exit
""")
loop=True
while loop=True:
    try:
        if modetype == 1:
            loop=False
            standard()
        if modetype == 2:
            loop=False
            ordered()
        if modetype == 3:
            loop=False
            shuffle()
        else:
            loop==True
            print("Please select a valid option")
    except ValueError:
        loop=True
        print("Please select a valid option")

语法错误突出显示上冒号后的整行

if modetype == 2:

有谁能帮我,告诉我这是什么,以及如何修复它吗?

loop=True
while loop=True:

不要这样做。这既是一个语法错误(您指的是while loop == True),也是不必要的。只做

while True:

循环结束后再进行CCD_ 2。请注意,你似乎把分配和平等检查混为一谈;

    else:
        loop==True

几乎可以肯定,您只是想执行loop = True,尽管这显然是不必要的,因为在代码中必须已经是True才能达到这一点。

事实上,我错了,但理由不充分。我假设您也犯了一个逻辑错误,第二个和第三个if语句应该是elif语句。照原样,如果用户输入"1",则第一个if块会激发,然后代码会查看第二个和第三个if块。由于第三个if语句为false,因此该语句的else语句也会触发,这不可能是您想要的。

这是使用break而不是像您所实现的那样使用"软"循环终止的另一个原因。

while loop=True:应为while loop==True:

我怀疑你连modetype==2都没有。。。

尝试

while loop==True:

或者,更好的是,简单的

while loop:

最新更新