更改全局变量B的值时遇到问题

2024-05-06 00:23:51 发布

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

我试图创建一个战舰游戏来练习我的编码,但是我在更改全局变量的值时遇到了困难


turnsover = 0
diff = 0
ship_row = 0
ship_col = 0

def difficulty():

    global diff
    global turnsover
    diff = input("Please select a difficulty\n 1=Easy \n 2=Meduim \n 3=Hard \n 4=VS Machine\n")
    if diff.isdigit():
        diff = int(diff)

        if int(diff) not in range(1,5):
            print("Please select a correct difficulty level")
            difficulty()

        if diff == 1:
            turnsover == 20
            print("Difficulty level: Easy")

        if diff == 2:
            turnsover == 15
            print("Difficulty level: Meduim")

        if diff == 3:
            turnsover == 10
            print("Difficulty level: Hard")

        if diff == 4:
            turnsover == randint(1, 26)
            print("Difficulty level: Vs Machine")


        ####REMOVE AFTER PROD####
        print(turnsover)
    else:
        print("Please select a correct difficulty level")
        difficulty()

turnsover的产品测试打印返回0,而不是返回新的turnsover数量(又名剩余寿命)


Tags: ifeasydiffmachinelevelselectglobalprint
1条回答
网友
1楼 · 发布于 2024-05-06 00:23:51

正如@MorganThrapp所说,您正在检查turnsoverturnsover == 10等代码的相等性,而不是像这样给它赋值:turnsover = 0=意味着赋值==意味着相等。当您在代码开头为全局变量赋值时,这应该是显而易见的

相关问题 更多 >