我有四个字典我想在空列表中添加为字典值的项目。我不知道该怎么做有人可以帮我弄清楚如何解决这个问题:
data = {'Cars': []}
dict1 = {'subaru': 1, 'honda': 5, 'volkswagen': 8}
dict2 = {'subaru': 7, 'honda': 3, 'volkswagen': 9}
dict3 = {'subaru': 9, 'honda': 2, 'volkswagen': 1}
dict4 = {'subaru': 2, 'honda': 8, 'volkswagen': 2}
print (data)
进入这个:
{'Cars': [{'subaru': 1, 'honda': 5, 'volkswagen': 8},
{'subaru': 7, 'honda': 3, 'volkswagen': 9},
{'subaru': 9, 'honda': 2, 'volkswagen': 1},
{'subaru': 2, 'honda': 8, 'volkswagen': 2}]}
答案 0 :(得分:1)
data = {'Cars': []}
dict1 = {'subaru': 1, 'honda': 5, 'volkswagen': 8}
dict2 = {'subaru': 7, 'honda': 3, 'volkswagen': 9}
dict3 = {'subaru': 9, 'honda': 2, 'volkswagen': 1}
dict4 = {'subaru': 2, 'honda': 8, 'volkswagen': 2}
for item in [dict1, dict2, dict3, dict4]: data['Cars'].append(item)
import pprint
pp = pprint.PrettyPrinter()
pp.pprint(data)
给出:
{'Cars': [{'subaru': 1, 'honda': 5, 'volkswagen': 8},
{'subaru': 7, 'honda': 3, 'volkswagen': 9},
{'subaru': 9, 'honda': 2, 'volkswagen': 1},
{'subaru': 2, 'honda': 8, 'volkswagen': 2}]}
引文:“”{“data['Cars']
是您最初为空的列表。您可以通过在列表上调用.append()
将元素添加到列表中。因此,data['Cars'].append(dict1)
等等。”“ “ - jasonharper
这可以在如上构造的循环中一步完成。
要获得import
pp
漂亮的,请使用pp = pprint.PrettyPrinter()
创建pp.pprint()
对象并使用data
函数以漂亮的方式打印嵌套在字典中的列表:)。
顺便说一下:您可以使用以下步骤创建包含已包含元素的列表的data = {'Cars': [
{'subaru': 1, 'honda': 5, 'volkswagen': 8},
{'subaru': 7, 'honda': 3, 'volkswagen': 9},
{'subaru': 9, 'honda': 2, 'volkswagen': 1},
{'subaru': 2, 'honda': 8, 'volkswagen': 2}]}
字典:
{{1}}
答案 1 :(得分:0)
您需要访问Cars
词典中的data
键,然后附加到该词典。
data = {'Cars': []}
dict1 = {'subaru': 1, 'honda': 5, 'volkswagen': 8}
dict2 = {'subaru': 7, 'honda': 3, 'volkswagen': 9}
dict3 = {'subaru': 9, 'honda': 2, 'volkswagen': 1}
dict4 = {'subaru': 2, 'honda': 8, 'volkswagen': 2}
data['Cars'].append(dict1)
data['Cars'].append(dict2)
data['Cars'].append(dict3)
data['Cars'].append(dict4)
您可以将其简化为
data['Cars'].append({'subaru': 1, 'honda': 5, 'volkswagen': 8})
data['Cars'].append({'subaru': 7, 'honda': 3, 'volkswagen': 9})
data['Cars'].append({'subaru': 9, 'honda': 2, 'volkswagen': 1})
data['Cars'].append({'subaru': 2, 'honda': 8, 'volkswagen': 2})
答案 2 :(得分:0)
只需将所有字样附加到data["Cars"]
这是一个列表。
for i in [dict1, dict2, dict3, dict4]:
data["Cars"].append(i)
print data