从两个列表的元素创建一个新的常规列表 python

Creating a new regular list from the elements of two lists python

我有两个列表;

top_value=[466, 482, 508, 523, 543, 564, 583]
left_value= [103, 129, 206, 470, 536, 567, 669, 766]

结果;

[[103,466],[103,482],[103,508],[103,523],[103,543],[103,583]],[[129,466],[129,482]...],[[206,466],[.....]],[[,,,]] ....

我尝试了 itertools 排列和组合方法,得到了重复或无序的结果。 我想得到结果。总的来说应该有 56 个二进制元素。 还有其他方法吗?

谢谢

您正在寻找 itertools.product,它创建传递的可迭代对象的笛卡尔积。

from itertools import product
out = list(product(left_value, top_value))

输出:

[(103, 466), (103, 482), (103, 508), (103, 523), (103, 543), (103, 564), (103, 583), (129, 466), (129, 482), (129, 508), (129, 523), (129, 543), (129, 564), (129, 583), (206, 466), (206, 482), (206, 508), (206, 523), (206, 543), (206, 564), (206, 583), (470, 466), (470, 482), (470, 508), (470, 523), (470, 543), (470, 564), (470, 583), (536, 466), (536, 482), (536, 508), (536, 523), (536, 543), (536, 564), (536, 583), (567, 466), (567, 482), (567, 508), (567, 523), (567, 543), (567, 564), (567, 583), (669, 466), (669, 482), (669, 508), (669, 523), (669, 543), (669, 564), (669, 583), (766, 466), (766, 482), (766, 508), (766, 523), (766, 543), (766, 564), (766, 583)]