python的问题,关于类中定义的列表,求大神解答
发布网友
发布时间:2022-03-25 21:21
我来回答
共2个回答
热心网友
时间:2022-03-25 22:50
你用id(test1.List) 和id(test2.List) 可以发现,两个的id值一样。
因为List 是紧接着类后面定义的变量,被称为类变量。类似于java的静态变量
如果在__init__中的self.List的话就是实例变量。
热心网友
时间:2022-03-26 00:08
当实例化对象的时候,新的实例得到是类属行的一个引用,这个引用不能说是可读的,可读不可读都是针对所引用的这个属性是否可变,数字,字符串是不可边的数据类型,而list或者自定义对象等都是可变类型
class a:
b=4
List=[];
test1=a()
test1.b=5
test1.List.append("11")
test2=a()
print (test2.List),(test2.b),(test1.b)
>>>
['11'] 4 5
>>>
http://my.oschina.net/emrys/blog/89652追问同样也谢谢你的回答,谢谢大神~~