python - 通过用第一个数组项索引条目来合并两个数组?

标签 python matrix

假设我有

a = [1,2,1,3,2,2]
b = [4,7,9,5,6,11]

我很期待

c = [[4,9],[7,6,11],[5]]

如您所见,生成的子列表位于列表 a 指向的索引处。我们在 Python 中怎么做?

最佳答案

你可以使用defaultdict:

>>> from collections import defaultdict
>>> d = defaultdict(list)
>>> a = [1,1,1,2,2,3]
>>> b = [4,7,9,5,6,11]
>>> for k,v in zip(a,b):
...     d[k].append(v)
... 
>>>[x[1] for x in sorted(d.items())]
[[4, 7, 9], [5, 6], [11]]

关于python - 通过用第一个数组项索引条目来合并两个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16483456/

相关文章:

java - Floatbuffer 到 Matrix4f 的错误顺序 LWJGL

python - 通过 conda 安装 python 3.5 得到无法满足的错误 "backport.os"

python - 如何在GoCV中提取信心

python - 在 Python 中复制字符串列表的最佳方法是什么?

c++ - 检查 OpenCV 矩阵是否为浮点分量类型

c - 二维矩阵中最小的 3 个元素

python - 使用 python beautifulsoup 抓取 NBA 高级统计数据

Python: Can dumpdata cannot loaddata back. Unicode解码错误

python - 如何在点图中设置固定深度级别

matrix - C++ 稀疏矩阵库