我是python新手,所以我现在很困惑。我只想在一个循环中创建MyClass类的两个实例。在
我的代码:
for i in range(1, 10):
my_class = MyClass()
print "i = %d, items = %d" % (i, my_class.getItemsCount());
my_class.addItem(i)
我的课
^{pr2}$输出是:
i = 0, items = 0
i = 1, items = 1
i = 2, items = 2
and so on...
但每次迭代时,我都希望在变量my_class中有一个新的MyClass空实例。因此,预期产出为:
i = 0, items = 0
i = 1, items = 0
i = 2, items = 0
你能帮助我理解吗? 谢谢。在
_items
是一个类属性,在类定义期间初始化,因此通过向其附加值,可以修改类属性和非实例属性。在为了解决这个问题,您可以通过将以下代码放入
__init__
方法,为类的每个实例创建_items
:{cd1>所有的实例都是不同的
^{pr2}$因此,附加将按预期工作。在
顺便说一下,在你的例子中^{} is not quite good name choice for a class variable 。在
相关问题 更多 >
编程相关推荐