提问人:n_cen 提问时间:5/26/2023 最后编辑:n_cen 更新时间:5/26/2023 访问量:40
Python - 从嵌套列表和字典创建字典
Python - Create Dictionary From Nested List and Dictionaries
问:
我正在尝试从列表中的字典中的值创建字典。请参阅以下示例:
dict1={'x':1,'y':7}
dict2={'x':2,'y':8}
dict3={'x':3,'y':9}
list1=[dict1,dict2,dict3]
list2=[dict3]
list3=[dict2,dict3]
A=[list1,list2,list3]
如何循环访问列表和字典以为 {x:y} 创建新字典?
newdict={A[0][0]['x']:A[0][0]['y'] ,..., A[2][1]['x']:A[2][1]['y']}
我试过了:
newdict={}
for i in A:
newdict[i]={A[i][j]['x']:A[i][j]['y'] for j in A[i]}
但是我收到一个错误“列表索引必须是整数或切片,而不是列表”
答:
0赞
Kache
5/26/2023
#1
像这样的东西:
foo_dict = {'x': 1, 'y': 2, 'z': 3}
inner_list = [foo_dict]
outer_list = [inner_list]
newdict = {d['x']: d['y'] for inner in outer_list for d in inner}
# => {1: 2}
使用您最近添加的示例:
all_xy = {d['x']: d['y'] for inner in A for d in inner}
# => {1: 7, 2: 8, 3: 9}
下一个:在另一个列表中添加列表项
评论
A
x
y
z
x
y