我正在阅读Python速成课程书,我被困在某事上。我想迭代一个列表中的字典来打印字典中的值。我有3个dictonaries放入列表中,我喜欢迭代并打印出来自dictonaries的信息。这甚至可能吗?
答案 0 :(得分:1)
这样的事情应该可以胜任,其中dic = dictionary:
for your_dic in your_list:
for key in your_dic:
print(your_dic[key])
如果您只想访问一个特定字典,请执行以下操作:
temp_dict = your_list[0] # assign 0th element of the list to temp_dict
# Iterate over all keys in your dictionary and print them
for key in temp_dict:
print(temp_dict[key])
请记住,字典不是有序的,因此迭代所有键并不总是会导致相同的打印语句顺序
答案 1 :(得分:0)
如果你正在进行大量的字典列表操作,那么这个名为PLOD的专用库就有了。它可以在PyPI上找到。使用示例:
>>> lod = [{'a': 1, 'b': 2}, {'a': 9, 'c': 3}]
>>> from PLOD import PLOD
>>> print PLOD(lod).returnString()
[
{a: 1, b: 2, c: None},
{a: 9, b: None, c: 3}
]
>>> print PLOD(lod).returnString(honorMissing=True)
[
{a: 1, b: 2 },
{a: 9, c: 3}
]
文档位于https://github.com/MakerReduxCorp/PLOD/wiki。
不幸的是,该库尚未升级到Python3(我正在帮助解决这个问题。)