python将列表元素加入列表列表

时间:2018-10-10 00:29:31

标签: python

我正在尝试以特定方式加入某些列表元素: 假设我有以下列表:

simpleline= [ 4 ]
otherline= [ 5, 7 ]
nextline=[ 1, 2 ]

我要生成以下列表:

 middlelist=[ [ 4, 5 ] , [ 4, 7 ] ]

然后终于:

finallist=[ [ 4, 5, 1] , [4, 7, 1] , [ 4, 5, 2 ] , [ 4, 7, 2 ] ]

我尝试了一个循环中的第一个过程:

simpleline= [ 4 ]
otherline= [ 5, 7 ]
nextline=[ 1, 2 ]

middlelist=[]
for element in range(len(otherline)):
           snap=simpleline[0].append(otherline[element])
           middlelist.append(snap)

print middlelist

但这会导致错误:

 AttributeError: 'int' object has no attribute 'append'

我非常感谢您

2 个答案:

答案 0 :(得分:1)

为此,我将使用itertools.product

finallist = list(map(list, itertools.product(*[simpleline,otherline,nextline])))

>>> finallist
[[4, 5, 1], [4, 5, 2], [4, 7, 1], [4, 7, 2]]

如果您还需要middlelist

middlelist = list(map(list, itertools.product(*[simpleline,otherline])))

>>> middlelist
[[4, 5], [4, 7]]

答案 1 :(得分:0)

可以在此处使用列表理解,只需要串联最终列表即可

ref