更新模块中变量的值
Update value of a variable in a module
我有两个文件 main.py 和 val.py。从主文件中的 val.py 中获取一个值,然后我想更新原始文件中的变量。然后在计算中进一步使用该值。每次调用该函数时,我都想获得更新后的值而不是初始值。但我这里只得到初始值。
val.py
num = 0
#update the original value
def update(num):
num +=1
return
#get the current 'num' value
def current():
return num
Main.py
import val
val.update(val.current())
print(val.current())
全局变量没有得到更新。我似乎无法在这里找出正确的问题。我也在函数中将值作为参数传递。如果有人能给出提示,那将非常有帮助。
在 update()
中,您用一个也称为 num
的局部变量隐藏了模块的 num
变量。如果你摆脱它并使用global
关键字,你可以修改模块的num
值。
num = 0
def update():
global num
num += 1
我有两个文件 main.py 和 val.py。从主文件中的 val.py 中获取一个值,然后我想更新原始文件中的变量。然后在计算中进一步使用该值。每次调用该函数时,我都想获得更新后的值而不是初始值。但我这里只得到初始值。
val.py
num = 0
#update the original value
def update(num):
num +=1
return
#get the current 'num' value
def current():
return num
Main.py
import val
val.update(val.current())
print(val.current())
全局变量没有得到更新。我似乎无法在这里找出正确的问题。我也在函数中将值作为参数传递。如果有人能给出提示,那将非常有帮助。
在 update()
中,您用一个也称为 num
的局部变量隐藏了模块的 num
变量。如果你摆脱它并使用global
关键字,你可以修改模块的num
值。
num = 0
def update():
global num
num += 1