关于全局变量范围的问题

时间:2019-09-13 22:16:30

标签: python variables scope

我开始用python开发,并且我的变量之一的范围有问题

我声明了一个整数类型的名为“ bankroll”的变量,并为其分配了500的值,然后在函数中使用该变量并将其作为参数传递,但是在函数执行结束时,其值保持不变不明白(该功能在另一个模块中定义,但在同一文件中使用或声明为“ bankroll”)

我试图从函数中返回此变量并将其重新分配给资金,但其值没有改变

# the function taking in parameter bankroll
def roulette(mise,numeroChoisis, bankroll, continuerPartit):

   else:
        print("c'est perdu !")
        bankroll - mise
        math.ceil(bankroll)
        return bankroll

#the main 
bankroll = rouletteGain.roulette(mise, numeroChoisis, bankroll, continuerPartit)

1 个答案:

答案 0 :(得分:1)

您必须在函数中将变量声明为global才能使其工作。像这样:

def increment(val):
    global x
    x = x + 1

x = 4
increment(x)
print(x) # 5