当引用一个变量时,Python按以下顺序依次进行查找:
第一个能够完成查找的就算成功,就会停止往下查找
str # 4.(B) 内置模块名
print(str)
str = "G" # 3. (G) 全局作用域
def computer(value=20):
# 嵌套作用域内的变量:value, prize, str
def prize():
# str = "L"
print("str:", str) # 1.(L) 本地变量
print("inner:", value)
str = "E" # 2.(E) 上一层结构中的def或lambda的本地作用域
prize()
computer(88)
word = "global"
def outer(word="TAT"):
# 作用域:word, inner
print(word)
def inner():
print(word)
word += "enclose"
inner()
outer()
print(word)