Python从三个列表中创建一个特定的dict

loc*_*ckM 3 python dictionary list

我有三个列表,我想转换成一个特定的字典

A = ["a", "b"]
B = ["10", "20"]
C = ["key1", "key2"]
Run Code Online (Sandbox Code Playgroud)

我想要一个这样的字典

"key1": {
  "name": "a",
  "age": 10
},
"key2": {
    "name": "b",
    "age": 20
  }
Run Code Online (Sandbox Code Playgroud)

我通过不同的步骤尝试不同的方式,但我没有得到这个字典

for key in A:
  dict_A["name"].append(key)
Run Code Online (Sandbox Code Playgroud)

jpp*_*jpp 6

使用字典理解:

res = {key: {'name': name, 'age': age} for key, name, age in zip(C, A, B)}
Run Code Online (Sandbox Code Playgroud)

这给出了:

{'key1': {'age': '10', 'name': 'a'}, 'key2': {'age': '20', 'name': 'b'}}
Run Code Online (Sandbox Code Playgroud)

zip 允许您通过索引聚合每个可迭代的元素.