如何从嵌套函数中修改变量



我在python中尝试了一些关于作用域的东西,遇到了一个小问题。我这里有这个代码。我想更改嵌套函数中的变量var

def func_1():
var = 1

def func_2():
var = 2

func_2()
print(var)
func_1()

当运行func_1()时,var仍然为1。是否可以在func_2下编辑var

您可以使用nonlocal关键字:

def func_1():
var = 1
def func_2():
nonlocal var
var = 2
func_2()
print(var)
func_1() # prints 2

最新更新