我想为列表中的每个元素添加1而不创建新的
i = [1,2,3,4,5]
for each in i:
i[i.index(each)] = each+1
print(i)
但它会像这样返回......
[6,2,3,4,5]
似乎在第一个元素中添加了一个..但我想为每个元素添加一个..
答案 0 :(得分:5)
lst = [1,2,3,4,5]
for i, x in enumerate(lst):
lst[i] = x + 1
print(lst)
<强>输出
[2, 3, 4, 5, 6]
答案 1 :(得分:0)
在下次i.index(每个)总是返回第一个元素
时递增1for idx in range(len(i)):i[idx]+=1
答案 2 :(得分:-1)
尝试使用列表中的range
<强>实施例
i = [1,2,3,4,5]
for each in range(len(i)):
i[each]= i[each]+1
print(i)
<强>输出:
[2, 3, 4, 5, 6]