你好,我有一个 python 字典,如下所示:
d = {'a': [1,2,3],
'b': [3,4,5],
'c':[6,7,8]}
Run Code Online (Sandbox Code Playgroud)
有什么方法可以迭代这个字典,以便我可以并行地按顺序获取所有键中所有列表值中的每个项目?请记住,我没有pandas可用的包裹。
例如:
loop 1 output: a:1,b:3,c:6
loop 2 output: a:2,b:4,c:7
loop 3 output: a:3,b:5,c:8
Run Code Online (Sandbox Code Playgroud)
您可以假设字典中所有键的列表长度都相同。
作为单行
result = [dict(zip(d.keys(), v)) for v in zip(*d.values())]
Run Code Online (Sandbox Code Playgroud)
或者如果您想将事情分开以使其更清晰
keys, values = d.keys(), list(zip(*d.values()))
result = [dict(zip(keys, v)) for v in values]
Run Code Online (Sandbox Code Playgroud)