How to append all elements of one list to another one?
本问题已经有最佳答案,请猛点这里访问。
可能是一个简单的问题,但我想将一个列表中的元素逐个解析到另一个列表中。例如:
1 2 | a=[5, 'str1'] b=[8, 'str2', a] |
目前
1 | b=[8, 'str2', [5, 'str1']] |
但是我想成为EDOCX1[0]
做EDOCX1[1]也不起作用。
使用
1 2 | b.extend(a) [8, 'str2', 5, 'str1'] |
您可以使用加法:
1 2 3 4 | >>> a=[5, 'str1'] >>> b=[8, 'str2'] + a >>> b [8, 'str2', 5, 'str1'] |
有效的方法是使用List类的extend()方法。它将可迭代作为参数,并将其元素追加到列表中。
1 | b.extend(a) |
在内存中创建新列表的另一种方法是使用+运算符。
1 | b = b + a |
1 2 3 4 5 6 | >>> a [5, 'str1'] >>> b=[8, 'str2'] + a >>> b [8, 'str2', 5, 'str1'] >>> |
对于extend(),您需要分别定义b和a…
那么,
您可以使用切片在任意位置解包另一个列表中的列表:
1 2 3 4 5 | >>> a=[5, 'str1'] >>> b=[8, 'str2'] >>> b[2:2] = a # inserts and unpacks `a` at position 2 (the end of b) >>> b [8, 'str2', 5, 'str1'] |
同样,您也可以将其插入另一个位置:
1 2 3 4 5 | >>> a=[5, 'str1'] >>> b=[8, 'str2'] >>> b[1:1] = a >>> b [8, 5, 'str1', 'str2'] |