提问人: 提问时间:11/8/2022 更新时间:11/8/2022 访问量:34
如何将字典列表更改为列表列表,其中每个列表都是键,值对?
How to change list of dictionaries into list of lists where every list is a key,value pair?
问:
我在 python 中有一个字典列表(具有多个键、值对),我正在尝试将每个字典制作成一个列表,其中每个键、值对也是它自己的列表。例如:我希望它输出的是:list = [{a: 1, b: 2, c: 3}, {d: 4, e: 5, f: 6}, {g: 7,h: 8,i: 9}]
newlist = [[[a, 1], [b, 2], [c, 3]], [[d, 4][e, 5],[f, 6]], [[g, 7],[h, 8],[i, 9]]]
我找到的唯一方法只能让我有一个列表,其中来自不同字典的键、值对位于一个大列表中,但我需要每个字典都是不同的列表。
答:
0赞
el_oso
11/8/2022
#1
my_list = [{'a': 1, 'b': 2, 'c': 3}, {'d': 4, 'e': 5, 'f': 6}, {'g': 7,'h': 8,'i': 9}]
r = []
for _ in my_list:
r.append([[k,v] for k,v in _.items()])
print(r)
[[['a', 1], ['b', 2], ['c', 3]], [['d', 4], ['e', 5], ['f', 6]], [['g', 7], ['h', 8], ['i', 9]]]
0赞
Goku - stands with Palestine
11/8/2022
#2
请不要用作标识符或变量名称。list
l = [{'a': 1, 'b': 2, 'c': 3}, {'d': 4, 'e': 5, 'f': 6}, {'g': 7,'h': 8,'i': 9}]
[[list(x) for x in l[y].items()] for y in range(len(l))]
#output
[[['a', 1], ['b', 2], ['c', 3]], [['d', 4], ['e', 5], ['f', 6]], [['g', 7], ['h', 8], ['i', 9]]]
评论