Python:修改一个类'特定对象的列表

时间:2016-09-30 12:45:29

标签: python class object

所以我有一个列表,其中有一个列表。该列表具有公共字符串,并且应该根据另一个变量为每个对象提供一些特定的字符串。

class test: 
   strings = []
   name = None

然后我创建一个对象列表

objects = []
i = 0
while i < 2 :
   o = test()
   o.name = "Object " + str(i)
   objects.append(o)
   i += 1

然后我在列表中添加两个对象的通用字符串

test.strings.append("String 1")
test.strings.append("String 1")

我需要的是每个对象之后都有一个特定的字符串,所以我试过

test.append("testing")
for element in objects :
   print element.strings[ len(element.strings) - 1 ]
   element.strings[ len(element.strings) - 1 ] = element.name
   print element.strings[ len(element.strings) - 1 ]

我得到的输出是

testing
Object 0
Object 0
Object 1

当我尝试访问element.strings时,该字符串始终是最后一次修改。

我尝试单独追加,而不是在for之前执行test.append,但它为每个对象添加了元素。有没有办法做我想做的事情?

编辑重复: 另一个问题是如何获得没有共享信息的独立数据。我想要的是与一些特定数据实例共享信息。

0 个答案:

没有答案