Python中class类中数组的定义与用法
在python的class中,数组的定义需要特别注意。具体如下所示:
class aaa:
ddd = 2
test = []
def __init__(self, tmp=0):
self.ccc = tmp
self.bbb = []
self.test.append(tmp)
def add_num(tmp):
tmp.bbb.append(5)
a = aaa(5)
b = a.bbb
b.append(1)
a.ddd = 10
add_num(a)
c = aaa(11)
c.ddd = 5
d = aaa(1)
d.bbb.append(12)
print(a.test, c.test, d.test)
print(a.bbb, c.bbb, d.bbb)
其输出结果为:
[5, 11, 1] [5, 11, 1] [5, 11, 1]
[1, 5] [] [12]
即非在__init__函数中再创建的数组将成为class类的公共数组,init函数定义后的数组才为实例的私有数组。
该博客介绍了Python类中数组的定义和使用方法。在类中定义的数组如果不在`__init__`函数内初始化,则会成为类的公共属性,而`__init__`里创建的数组则是实例的私有属性。示例代码展示了如何在类中操作数组,并通过实例演示了类的公共和私有数组的区别。
5503





