在Python中合并两个数组
我一直在用Python处理一个数组,这个数组里面有一维的数值列表。到目前为止,我一直用array.append(value)这个方法一个一个地往数组里添加值。
现在,我想把另一个数组里的所有值一次性添加到主数组里。换句话说,我不想一个一个地添加。那个辅助数组会收集十个值,当这些值都收集齐了,就一次性转移到主数组里。问题是,我不能简单地用'array.append(other_array)'这段代码,因为会出现以下错误:
unsupported operand type(s) for +: 'int' and 'list'
我哪里出错了?
4 个回答
2
你是在问用数组(比如 numpy.array
或 array
模块)还是用 list
吗?因为根据你给的错误信息,看来你应该是用后者,也就是 list
。
不管怎样,你可以使用 +=
这个操作符,它通常可以用于大多数容器类型,但要注意,两个操作数必须是相同的(复合)类型。
30
列表可以相加:
>>> a = [1,2,3,4]
>>> b = [5,6,7,8]
>>> a+b
[1, 2, 3, 4, 5, 6, 7, 8]
而且可以很简单地把一个列表加到另一个列表的末尾:
>>> a += b
>>> a
[1, 2, 3, 4, 5, 6, 7, 8]
22
你可以看看 array.extend() 这个方法。append()
只会把一个单独的元素加到数组里。