下面的代码创建了一个对象列表,该对象包含一个列表作为属性,以及一种将项目追加到此列表的方法,但是这种追加无法正常工作。
我的期望:
每个对象MyList
内部的每个列表MyObj
只有3个元素。
工作方式:
MyList
中的列表MyObj[0]
具有3个元素
MyList
中的列表MyObj[1]
有6个元素
MyList
内的列表MyObj[2]
有9个元素
在我看来,对象MyObj[i]
附加了先前对象MyList
的{{1}}。该代码应如何使每个MyObj[i-1]
的每个列表MyList
仅具有方法MyObj[i]
插入的3个元素?
Python代码:
add_to_list
答案 0 :(得分:1)
您还需要添加MyObj[i].MyList.clear()
行:
MyObj = []
for i in range(3):
MyObj.append(MyClass())
MyObj[i].add_to_list()
print("Object " + str(i))
print(MyObj[i].MyList)
MyObj[i].MyList.clear()
输出:
Object 0
['Item 0', 'Item 1', 'Item 2']
Object 1
['Item 0', 'Item 1', 'Item 2']
Object 2
['Item 0', 'Item 1', 'Item 2']