将元素添加到列表会更改所有元素

时间:2013-02-20 09:25:25

标签: python

我遇到以下代码的问题

    my_list = []
    for i in xrange(1, 13):
        my_list.append(MyObject(year=year, month=i))

我不知道为什么在调用append方法时,列表中的所有元素都被new元素替换。所以当循环结束时,我在列表中有12个相同的元素。请帮忙。

1 个答案:

答案 0 :(得分:1)

我怀疑问题出在你的MyObject类

您是将年份和月份存储为类属性而不是实例变量吗?