将 class 个对象的列表转换为列表列表

Convert list of class objects to list of lists

我的目标是编写一个函数,它接收 class 个对象的列表并将它们转换成列表的列表,这就是我目前拥有的:

def convertToListOfLists(toConvert):
    listOfLists = []
    temp = []
    for t in toConvert:
        temp.append(t.datenbestand)
        temp.append(t.aktenzeichen)
        temp.append(t.markendarstellung)
        temp.append(t.aktenzustand)
        listOfLists.append(temp)
        temp.clear()
    print(listOfLists)
    return listOfLists

输出:[[], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []] 而 'toConvert' 持有 17 个对象

如果我将打印移到循环中并打印出我的 'listOfLists' 我可以看到对象已正确添加到我的 'listOfLists' 但如您所见,如果我访问 'listOfLists' 在循环外,'listOfLists' 只包含空列表。

我错过了什么?

每次循环都需要创建一个新的temp

def convertToListOfLists(toConvert):
    listOfLists = []
    for t in toConvert:
        temp = []
        temp.append(t.datenbestand)
        temp.append(t.aktenzeichen)
        temp.append(t.markendarstellung)
        temp.append(t.aktenzustand)
        listOfLists.append(temp)
    print(listOfLists)
    return listOfLists