10

例如我有两个数组 aarray1array2

array1 = ['A', 'B', 'C', 'D', 'E', 'F',]
array2 = ['G', 'H', 'I',]`

现在我想要输出为

array1 = ['A', 'B', 'C', 'D', 'E', 'G', 'H', 'I',]

我怎么能在python中做到这一点

4

4 回答 4

19
>>> array1 = ['A', 'B', 'C', 'D', 'E', 'F']
>>> array2 = ['G', 'H', 'I']
>>> array1 = array1[:-1] + array2
>>> array1
['A', 'B', 'C', 'D', 'E', 'G', 'H', 'I']
于 2012-07-09T10:57:02.353 回答
19

要替换 python 列表的一部分,您可以使用切片分配:

>>> array1 = ['A', 'B', 'C', 'D', 'E', 'F']
>>> array2 = ['G', 'H', 'I']
>>> array1[-1:] = array2
>>> array1
['A', 'B', 'C', 'D', 'E', 'G', 'H', 'I']

您可以使用切片分配替换列表的任何部分,包括插入不替换现有元素的列表:

>>> array1[0:0] = ['1st', '2nd']
>>> array1
['1st', '2nd', 'A', 'B', 'C', 'D', 'E', 'G', 'H', 'I']

在这里,[0:0]切片选择一个空白部分array1并用新元素“替换”它。

于 2012-07-09T10:58:54.437 回答
0

链接数组时,使用 itertools 可能很有用:

import itertools
array1 = itertools.chain(array1[:-1], array2)

而已。

文档:http ://docs.python.org/2/library/itertools.html#itertools.chain

于 2014-02-19T23:17:20.077 回答
-1
>>> array1.remove(array1[len(array1)-1])
>>> for i in array2:
        array1.append(i)

有点天真但有效..

于 2012-07-09T11:32:41.637 回答