Python 合并不同大小的列表。填满最小的

Python 合并不同大小的列表。填满最小的,python,Python,我想知道是否有任何模块可以执行以下操作: A = [ A, B, C ] B = [ 24 ] C = [ (24, A ), ( 24, B ) , (24, C) ] 谢谢 如果您的B是['24'],而不是[24],请尝试: >>> A = ['A', 'B', 'C'] >>> B = ['24'] >>> import itertools >>> list(zip(itertools.cycle(map(in

我想知道是否有任何模块可以执行以下操作:

A = [ A, B, C ]
B = [ 24 ]

C = [ (24, A ), ( 24, B ) , (24, C) ]
谢谢


如果您的
B
['24']
,而不是
[24]
,请尝试:

>>> A = ['A', 'B', 'C']
>>> B = ['24']

>>> import itertools
>>> list(zip(itertools.cycle(map(int, B)), A))
[(24, 'A'), (24, 'B'), (24, 'C')]

我想您知道int对象和str对象之间的区别…

如果不需要任何外部模块,这将适用于特定情况:

A = ['A', 'B', 'C']
B = [24]
C = zip(B * len(A), A)
print C

[(24, 'A'), (24, 'B'), (24, 'C')]

在一般情况下,这是不明确的;说
B=[24,35]
。您希望
C
成为什么样的人?这是一个特定的案例。由于某种原因,我在B中只使用了一个元素:[('2','A'),('4','B'),('2','C')]看起来你的
B
'24'
,而不是
24
。尝试
list(zip(itertools.cycle(map(int,B)),A))
。Sry我对python很陌生,因为某些原因我得到了这样的信息:[('2','A'),('4','B'),('2','C')]@andersalvarado如果你像我提供的那样使用代码(包括分配给
A
B
),你将不会得到那个输出。只有当
B
是字符串文字(即
B='24'
)而不是列表时,我才能复制您的输出,如您的问题所示。
A = ['A', 'B', 'C']
B = [24]
C = zip(B * len(A), A)
print C

[(24, 'A'), (24, 'B'), (24, 'C')]