v = [{'id': 1, 'tname': '张老师', 'cname': '二班'},
{'id': 1, 'tname': '张老师', 'cname': '三班'},
{'id': 2, 'tname': '赵老师', 'cname': '二班'},
{'id': 2, 'tname': '赵老师', 'cname': '三班'},
{'id': 3, 'tname': '王老师', 'cname': '三班'},
{'id': 3, 'tname': '王老师', 'cname': '四班'}]
res = {}
for i in v:
if i['id'] in res.keys():
res[i['id']]['cname'].append(i['cname'])
else:
res[i['id']] = {'id': i['id'], 'tname': i['tname'], 'cname': [i['cname']]}
# res =
# [{'id': 1, 'tname': '张老师', 'cname': ['二班', '三班']},
# {'id': 2, 'tname': '赵老师', 'cname': ['二班', '三班']},
# {'id': 3, 'tname': '王老师', 'cname': ['三班', '四班']}]
result = [{'id': i["id"], 'tname': i["tname"], 'cname': ','.join(i["cname"])} for i in res.values()]
print(result)
#[{'id': 1, 'tname': '张老师', 'cname': '二班,三班'},
# {'id': 2, 'tname': '赵老师', 'cname': '二班,三班'},
# {'id': 3, 'tname': '王老师', 'cname': '三班,四班'}]
Python数据处理-字典列表 转换
最新推荐文章于 2023-08-19 17:56:01 发布