gpt4 book ai didi

python - 映射两个列表而不循环

转载 作者:太空狗 更新时间:2023-10-30 00:21:18 24 4
gpt4 key购买 nike

我有两个等长的列表。第一个列表 l1 包含数据。

l1 = [2, 3, 5, 7, 8, 10, ... , 23]

第二个列表 l2 包含 l1 中的数据所属的类别:

l2 = [1, 1, 2, 1, 3, 4, ... , 3]

我如何根据第二个列表中的 1, 2, 3, 4 等数字定义的位置来划分第一个列表,使用列表理解lambda 函数。例如,第一个列表中的 2, 3, 7 属于同一分区,因为它们在第二个列表中具有相应的值。

分区数一开始就知道了。

最佳答案

你可以使用字典:

>>> l1 = [2, 3, 5, 7, 8, 10, 23] 
>>> l2 = [1, 1, 2, 1, 3, 4, 3]

>>> d = {}
>>> for i, j in zip(l1, l2):
... d.setdefault(j, []).append(i)
...
>>>
>>> d
{1: [2, 3, 7], 2: [5], 3: [8, 23], 4: [10]}

关于python - 映射两个列表而不循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36822478/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com