本文主要是介绍Python:nolocal 和 global,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
# nolocal 和 global的不同,nolocal改变的是上级作用域里的变量,global改变的是全局作用域里的变量
# global
name = 'xueyou'
def outer():
name = 'dehua'
def inner():
global name # 将全局作用域里的name值更改,也即xueyou变成fucheng
name = 'fucheng'
inner()
print(name) # 作用域里的name值未变
outer() # dehua
print(name) # fucheng
# nolocal
name = 'xueyou'
def outer():
name = 'dehua'
def inner():
nonlocal name # 将上级作用域里的name值更改,也即dehua变成fucheng
name = 'fucheng'
inner()
print(name) # fucheng
outer() # fucheng
print(name) # 全局作用域的变量未改,输出xueyou
这篇关于Python:nolocal 和 global的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!