首页 > 其他 > 详细

两层循环添加列表元素之后,发现数据一致(id地址问题!)。

时间:2021-08-09 14:12:11      阅读:36      评论:0      收藏:0      [点我收藏+]
res = [{‘id‘: 1, ‘type‘: 1, ‘value‘: 1.9}, {‘id‘: 2, ‘type‘: 2, ‘value‘: 2.9}, {‘id‘: 2, ‘type‘: 4, ‘value‘: 3.9},
{‘id‘: 1, ‘type‘: 2, ‘value‘: 2.9}, {‘id‘: 2, ‘type‘: 3, ‘value‘: 3.9}]
rem = [{‘r_id‘: 1, ‘name‘: ‘小白‘, ‘sex‘: ‘男‘}, {‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘},
{‘r_id‘: 4, ‘name‘: ‘黑铁疙瘩‘, ‘sex‘: ‘女‘}]

# 需求:通过r_id与id,获取不同的type对应的value值

# ret = []
#
# for i in res:
# for j in rem:
# if i[‘id‘] == j[‘r_id‘]:
# j[‘type‘] = i[‘type‘]
# j[‘value‘] = i[‘value‘]
# ret.append(j)
# else:
# if j not in ret:
# ret.append(j)
# print(ret)


获取到的结果是:
"""
[{‘r_id‘: 1, ‘name‘: ‘小白‘, ‘sex‘: ‘男‘, ‘type‘: 2, ‘value‘: 2.9},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 3, ‘value‘: 3.9},
{‘r_id‘: 4, ‘name‘: ‘黑铁疙瘩‘, ‘sex‘: ‘女‘},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 3, ‘value‘: 3.9},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 3, ‘value‘: 3.9},
{‘r_id‘: 1, ‘name‘: ‘小白‘, ‘sex‘: ‘男‘, ‘type‘: 2, ‘value‘: 2.9},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 3, ‘value‘: 3.9}]
"""


查看到发现是id地址重复问题


ret = []
import copy

for i in res:
for j in rem:
if i[‘id‘] == j[‘r_id‘]:
j[‘type‘] = i[‘type‘]
j[‘value‘] = i[‘value‘]
b = j.copy().copy()
ret.append(b)
# print(j)
# print(i)
else:
if j not in ret:
ret.append(j)
print(ret)
"""
[{‘r_id‘: 1, ‘name‘: ‘小白‘, ‘sex‘: ‘男‘, ‘type‘: 1, ‘value‘: 1.9},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 3, ‘value‘: 3.9},
{‘r_id‘: 4, ‘name‘: ‘黑铁疙瘩‘, ‘sex‘: ‘女‘},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 2, ‘value‘: 2.9},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 4, ‘value‘: 3.9},
{‘r_id‘: 1, ‘name‘: ‘小白‘, ‘sex‘: ‘男‘, ‘type‘: 2, ‘value‘: 2.9},
{‘r_id‘: 2, ‘name‘: ‘小黑‘, ‘sex‘: ‘女‘, ‘type‘: 3, ‘value‘: 3.9}]
"""




两层循环添加列表元素之后,发现数据一致(id地址问题!)。

原文:https://www.cnblogs.com/Meny/p/15117397.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!