"""
子类继承父类后,初始状态下,继承了父类的属性, 实际是子类属性对父类属性的引用
当在子类中修改继承过来的类属性时,并不会修改父类的同名类属性。以后只要是通过子类访问该属性,访问的都是子类的属性
而dict.update和 = 的区别在于, update在原对象操作 ,而直接赋值 会使子类的类属性指向新的对象
所以注意区别使用
dict.update会直接修改父类的类属性,从而所有子类的类属性发生变化
直接赋值会使子类的类属性指向新的对象,不会修改父类的类属性
"""
函数内的变量类似,可以访问,但是如果赋值的话就是函数内的变量,如果需要改变外部变量,需要添加global。 update则不用
(闭包函数访问函数内变量则需要添加nonlocal)
a = {"name": "wjz"}
def tmp():
# global a
a.update({"name": "123"})
def tmp2():
global a
a = 1
tmp()
print(a)