鱼C论坛

 找回密码
 立即注册
查看: 2982|回复: 6

两个含有重复的列表,合成一个字典

[复制链接]
发表于 2021-4-27 21:52:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
列表1 : [[a,b,a,c,c,d],[a,d,b,b,c],[b,a,a,c,d]
列表2:[1,2,3,2,5]
请问如何将列表1中的每个子列表都与列表2对应起来,得到如下的结果:
{a:[1,3],b[2],c;[3,2],d:[5]}
{a:[1],b:[3,2],c:[5],d:[2]}
{a:[2,3],b:[1],c:[2],d:[5]}
也就是列表1的每个子列表对应列表2的值,然后一行行输出?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-4-27 22:21:12 | 显示全部楼层
先把问题描述情况吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-4-27 22:31:02 | 显示全部楼层
列表1 第一个元素列表是不是多了一个元素?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-27 22:44:13 | 显示全部楼层
看看呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-27 23:01:30 | 显示全部楼层
如果你确定 列表1 第一个元素列表多了一个元素的话,看看我给你的是不是你想要的
  1. lst1 = [["a","b","a","c","d"],
  2.         ["a","d","b","b","c"],
  3.         ["b","a","a","c","d"]]
  4. lst2 = [1,2,3,2,5]

  5. alllst = []
  6. for each in lst1:
  7.     Dict = {}
  8.     for x,y in zip(each,lst2):
  9.         Dict[x] = Dict.get(x, []) + [y]
  10.     print(Dict)
  11.     alllst.append(Dict)
  12. print(alllst)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-28 08:58:52 | 显示全部楼层
qq1151985918 发表于 2021-4-27 23:01
如果你确定 列表1 第一个元素列表多了一个元素的话,看看我给你的是不是你想要的

非常感谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-5 12:27:08 | 显示全部楼层
  1. arr1 = [['a', 'b', 'a', 'c', 'd'], ['a', 'd', 'b', 'b', 'c'], ['b', 'a', 'a', 'c', 'd']]
  2. arr2 = [1, 2, 3, 2, 5]
  3. arr3 = [dict() for _ in range(len(arr1))]

  4. for n in range(len(arr1)):
  5.     for i, item in enumerate(arr1[n]):
  6.         if item in arr3[n]:
  7.             arr3[n][item].append(arr2[i])
  8.         else:
  9.             arr3[n][item] = [arr2[i]]

  10. [print(arr3[i]) for i in range(len(arr3))]
复制代码

  1. {'a': [1, 3], 'b': [2], 'c': [2], 'd': [5]}
  2. {'a': [1], 'd': [2], 'b': [3, 2], 'c': [5]}
  3. {'b': [1], 'a': [2, 3], 'c': [2], 'd': [5]}
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-19 04:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表