在Python中为列表的一部分添加偏移量?

时间:2013-09-08 05:40:09

标签: python arrays list numpy scipy

我有一个列表a = [1, 2, 3, 4, 5],现在我想为1之后的每个元素添加index 2,即a[2] + 1a[3] + 1,{ {1}}。

我最终想要a[4] + 1

这是什么最恐怖的方式

2 个答案:

答案 0 :(得分:8)

>>> a = [1, 2, 3, 4, 5]
>>> a[2:] = [x+1 for x in a[2:]]
>>> a
[1, 2, 4, 5, 6]

对于numpy数组:

>>> a = np.array([1,2,3,4,5])
>>> a[2:] += 1
>>> a
array([1, 2, 4, 5, 6])

答案 1 :(得分:1)

for i in range(2, len(a)) :
    a[i] += 1