我有一个像这样的list
laptop_list = [
{"manufacturer_id": 1 , "manufacturer_name": "Lenovo", "model_number": 000000, "model_name": "Legion"},
{"manufacturer_id": 1 , "manufacturer_name": "Lenovo", "model_number": 999999, "model_name": "Ideapad"},
{"manufacturer_id": 2 , "manufacturer_name": "HP", "model_number": 0101010, "model_name": "pavillion"} ,
{"manufacturer_id": 2 , "manufacturer_name": "HP", "model_number": 0202020, "model_name": "Inspiron"} ]
我需要重新构造上面的列表,类似于
[{"manufacturer_id": 1 , "manufacturer_name": "Lenovo", "models":[{"model_number": 000000, "model_name": "Legion"}, {"model_number": 999999, "model_name": "Ideapad"}]},
{"manufacturer_id": 2 , "manufacturer_name": "HP", "models":[{"model_number": 0101010, "model_name": "pavillion"} , {"model_number": 0202020, "model_name": "Inspiron"}]} ]
我尝试使用node
类,但未能达到预期的结果
class LaptopNode:
def __init__(self, manufacturer_id, manufacturer_name):
self.manufacturer_id = manufacturer_id
self.manufacturer_name = manufacturer_name
self.child_models = []
有人能提出一个有效的方法来实现这一点吗
谢谢你的回复。我也在发布我的方法
我把一个用
manufacturer_id and manufacturer_name
和另一个用model_number and model_name
分开列出然后,我添加了来自
model_number and model_name
的子列表,其中的字典位于``制造商id和制造商名称that matched up using
制造商id``列表中,作为匹配它们的键这一行
no_duplicate_dict = [dict(t) for t in {tuple(d.items()) for d in dictt}]
刚刚删除了重复的字典相关问题 更多 >
编程相关推荐