如交互模式中:例1:在类中的构造函数中,优先引用函数中的w,交互模式中,引用了Q中的w
>>> w=0 >>> class Q: w=1 def __init__(self): w=2 print('w=%d'%w) >>> a=Q() >>> w=2 >>> a.w >>> 1
例2:在类的构造函数中,没有的对象,优先引用交互模式下的
>>> w=0 >>> class Q: w=1 def __init__(self): print(w) >>> a=Q() >>> 0 >>> a.w >>> [] >>> w >>> [1]
实例变量:位于一块单独的存储空间中(在创建类对象时,会分配一块存储空间,用类对象的名字命名,并把它作为参数赋值给self,传入构造函数__init__中,
self.name=name 就是在那块存储空间中创建一个name变量,并赋值的过程)
静态变量:位于class中,且类中的函数外
局部变量:位于类中的函数内
全局变量:位于类外
类属性的内存地址只有一个,所有的类对象共用一个类属性
类对象每次都会创建一个新的内存区域
Sign in to make a reply
一盒噪噪
如交互模式中:例1:在类中的构造函数中,优先引用函数中的w,交互模式中,引用了Q中的w
例2:在类的构造函数中,没有的对象,优先引用交互模式下的
实例变量:位于一块单独的存储空间中(在创建类对象时,会分配一块存储空间,用类对象的名字命名,并把它作为参数赋值给self,传入构造函数__init__中,
self.name=name 就是在那块存储空间中创建一个name变量,并赋值的过程)
静态变量:位于class中,且类中的函数外
局部变量:位于类中的函数内
全局变量:位于类外