-1

考虑以下代码:

class SomeClass:
    def __init__(self):
        self.foo = None

some_list = [SomeClass()] * 5

这段代码的问题是所有 5 个项目都some_list引用SomeClass. 如果我这样做了some_list[0].foo = 7,那么我就some_list[1].foo等于7,等等。

那么如何在一个列表中实例化N不同的实例呢?SomeClass

4

1 回答 1

3

解决方案:使用列表推导

class SomeClass:
    def __init__(self):
        self.foo = None

some_list = [SomeClass() for _ in range(5)]
于 2019-01-10T19:16:21.760 回答