举下面的例子:
from pprint import pprint
class ResultsClass:
def __init__(self,
name = None,
counts = []):
self.name = name
self.counts = counts
objs = [ResultsClass() for i in range(5)]
i = 0
while i < 4:
objs[i].counts.append("count is " + str(i))
pprint(objs[i].counts)
i = i+1
结果是:
['count is 0']
['count is 0', 'count is 1']
['count is 0', 'count is 1', 'count is 2']
['count is 0', 'count is 1', 'count is 2', 'count is 3']
我还尝试了以下代码,但没有成功:
i = 0
objs = [ResultsClass() for i in range(5)]
for obj in objs:
obj.counts.append("count is " + str(i))
pprint(obj.counts)
i = +1
我要做的是让ResultClass的每个实例都有一个不同的计数列表,如下所示:
['count is 0']
['count is 1']
['count is 2']
['count is 3']
来自PowerShell的背景,我认为Python会遍历对象的每个实例,并附加到其中的特定列表中;相反,它似乎附加到对象列表和计数属性的所有实例
达到预期效果的最佳方法是什么
相关问题 更多 >
编程相关推荐