随机Python语法错误?

2024-04-23 20:51:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码总是出现一个随机的语法错误!我使用的是python3.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")

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

^{pr2}$

谁能帮帮我,告诉我这是什么,怎么修?在


Tags: 代码loopfalsetrueifmodedefselect
3条回答

试试看

while loop==True:

或者,好得多,简单点

^{pr2}$
loop=True
while loop=True:

别这样。这既是一个语法错误(您的意思是while loop == True),也是不必要的。就这么做吧

^{pr2}$

然后break当你完成循环时。注意,你似乎把作业和平等检查混在一起了

    else:
        loop==True

您几乎可以肯定的是要做loop = True,但这显然是不必要的,因为它必须已经是True,才能在代码中达到这一点。在

事实上,我错了,但不是有好的理由。我假设您也犯了一个逻辑错误,第二个和第三个if语句本来就是elif语句。同样,如果用户输入“1”,则第一个if块将触发,然后代码将查看第二个和第三个if块。由于第三条if语句为false,因此该语句的else语句也会触发,这可能不是您想要的。在

这是在“更软”的循环终止上使用break的又一个原因,就像您实现的那样。在

while loop=True:应该是while loop==True:

我怀疑你连modetype==2。。。在

相关问题 更多 >