如何正确地将项目添加到列表

How to add items to a list properly

我目前正在学习python。我正在学习 类、继承和抽象 类。这是有问题的构造函数:

def __init__(self, sourceCollection = None):
    """Sets the initial state of self, which includes the
    contents of sourceCollection, if it's present."""
    self.size = 0
    if sourceCollection:
        for item in sourceCollection:
            self.add(item)

我收到以下错误,我不知道为什么:

TypeError: 'int' object is not iterable

如果有帮助,这是我的添加方法:

def add(self, item):
    """Adds item to self."""
    # Check array memory here and increase it if necessary
    
    self.items[len(self)] = item
    self.size += 1

任何人都可以帮助我解决为什么会出现此错误吗?我做了一些研究,但无济于事。提前致谢!!!

随便做(.append()):

def add(self, item):
    """Adds item to self."""
    # Check array memory here and increase it if necessary
    
    self.items.append(item)
    self.size += 1

list 有一种方法可以从 iterable

添加所有元素

不要使用 self.size 来跟踪 self.items 中的元素数量,请使用 len(self.items)

def __init__(self, sourceCollection = None):
    """Make a copy of sourceCollection"""
    self.items = []
    if not sourceCollection: return
    self.items.extend(sourceCollection)

def add(self, item):
    """Adds item to self."""
    self.items.append(item)

@property
def size(self):
    return len(self.items)