Python使用numpy合并两个数组

时间:2016-02-16 19:24:02

标签: python arrays numpy

我想在python中将两个数组合并为所有可能的组合

ex a = [1,2,3]和b = [4,5,6]应该给出输出

c= [(1,4),(1,5),(1,6)  
   (2,4),(2,5),(2,6)  
   (3,4),(3,5),(3,6)]

按此特定顺序(即3x3的顺序)。订单在这里特别重要

3 个答案:

答案 0 :(得分:10)

itertools.product函数就是这样做的。

>>> import itertools
>>> a, b = [1,2,3], [4,5,6]
>>> list(itertools.product(a, b))
[(1, 4), (1, 5), (1, 6), (2, 4), (2, 5), (2, 6), (3, 4), (3, 5), (3, 6)]

注意:很可能你不需要list(),这只是为了显示输出。

答案 1 :(得分:1)

您正在寻找itertools.product

from itertools import product

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

print(list(product(a, b)))

输出

[(1, 4), (1, 5), (1, 6), (2, 4), (2, 5), (2, 6), (3, 4), (3, 5), (3, 6)]

答案 2 :(得分:0)

这将返回一个包含列表a和b的所有排列的列表。

import itertools
map(''.join, itertools.chain(itertools.product(a, b), itertools.product(b, a))