zoukankan      html  css  js  c++  java
  • Python继承,子类的类属性和父类的类属性

    """
    子类继承父类后,初始状态下,继承了父类的属性, 实际是子类属性对父类属性的引用
    当在子类中修改继承过来的类属性时,并不会修改父类的同名类属性。以后只要是通过子类访问该属性,访问的都是子类的属性

    而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)
  • 相关阅读:
    python第一课
    go反射----4构建
    go反射----3方法
    go反射----2值
    go生成xml
    go互斥锁Mutex
    go中的读写锁RWMutex
    go语言调用cmd
    go语言发送邮件
    go语言文件操作
  • 原文地址:https://www.cnblogs.com/sylarwang/p/14648445.html
Copyright © 2011-2022 走看看