大佬教程收集整理的这篇文章主要介绍了如何在不使用嵌套for循环的情况下将两个列表合并到字典中,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
您可以使用defaultDict:
from collections import defaultDict
d = defaultDict(List)
List_a = [0, 0, 0, 1, 1, 1, 1, 1, 9999]
Lis@R_618_11164@ = [24, 53, 88, 32, 45, 24, 88, 53, 1]
for a, b in zip(List_a, Lis@R_618_11164@):
d[a].append(b)
print(Dict(d))
输出:
{0: [24, 53, 88], 1: [32, 45, 24, 88, 53], 9999: [1]}
我有两个清单:
a = [0,1,.... 99999]
b = [24,53,88,32,45,24,...... 1]
我想将这两个列表合并成一个字典,例如:
{
0: [24,88],1: [32,53],......
99999: [1]
}
一个解决方案可能是使用for
循环,看起来不太美观,例如:
d = {}
unique_a = list(set(list_a))
for i in range(len(list_a)):
if list_a[i] in d.keys:
d[list_a[i]].append(lis@R_618_11164@[i])
else:
d[list_a] = [lis@R_618_11164@[i]]
尽管此方法确实有效,但效率很低,并且当列表很大时会花费太多时间。我想知道构造这种字典的更优雅的方法吗?
提前致谢!
以上是大佬教程为你收集整理的如何在不使用嵌套for循环的情况下将两个列表合并到字典中全部内容,希望文章能够帮你解决如何在不使用嵌套for循环的情况下将两个列表合并到字典中所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。