#Author:Du Yang
#Data:2018/7/19
count = 10
#局部变量不能直接对全局变量进行修改
def F():
global count#必须声明count为全局变量才能引用全局变量;
#如实若是为未声明,则语句会只会在函数的作用域中查找count变量,所以错误
count += 1
print(count)
def outer():
count = 999
def inner():
nonlocal count#测试时候将该句删去,查看区别
count = 20
print(count)
inner()
print(count)
outer()
#总结:
# 在不同函数作用域中加入“nonlocal 变量名” 和 ”global 变量名“ 的作用在于,
# 希望使用上一层函数(作用域)中的变量值
首先明确只有模块(module),类(class)以及函数(def、lambda)才会存在作用域的问题,if和for等没有作用域这一说