无法将字典值附加到python中列出

时间:2016-04-30 17:58:04

标签: python list dictionary append

Dictionary所以在python中我有一个字典,它由一个键的名称和一个与该名称相关联的类对象组成。我需要将这些对象从字典中逐个附加到列表中,但是当我尝试使用for循环时,它只会在agian上方追加相同的对象。当我尝试追加dict.values()时,我将它们附加到列表中但是dict_values这个词是列表中的第一个东西,它应该只是值本身。有没有人对如何正确附加这些值有任何想法?我一直在使用

for value in playerDict.values():
    basicList.append(playerDict.values)
    print(basicList)

尝试将值附加到名为basicList的列表中,但每次附加相同的对象时,经过几次迭代后,列表看起来就像

[<built-in method values of dict object at 0x103a03d48>, <built-in method values of dict object at 0x103a03d48>, <built-in method values of dict object at 0x103a03d48>, <built-in method values of dict object at 0x103a03d48>]

我在附加对象值时出错了。很抱歉基本的问题我对python很新。

1 个答案:

答案 0 :(得分:1)

尝试这样做:

for value in playerDict.values():
    basicList.append(value)
    print(basicList)

而不是:

for value in playerDict.values():
    basicList.append(playerDict.values)
    print(basicList)

当您尝试将playerDict.values附加到列表中时,您实际上是在尝试在对象表单中追加playerDict对象的值而不是您在字典的键中存储的内容(因此您得到{ {1}})。然而,当您追加[<built-in method values of dict object at 0x103a03d48>, <built-in method values of dict object at 0x103a03d48>时,它会附加存储在词典中的键的实际值。

希望,这有帮助。