【发布时间】:2013-11-13 21:38:49
【问题描述】:
我正在尝试覆盖现有列表并跳过列表中value[i] = -1 所在的任何索引,并将该值保留在正确的索引处。
一个问题是 last_item 值似乎环绕到列表的末尾,有没有办法防止这种情况?否则,有没有更好的方法来做到这一点?这在所有逻辑上似乎都太笨拙了。
数据如下:
-1
1
2
3
-1
1
2
3
我试图让它看起来像这样:
-1
1
2
3
-1
4
5...
编辑 我修改了 Alex 在下面发布的代码,现在运行良好。这是我使用的代码:
count = 1
for i range(len(my_list)):
if my_list[i] == -1:
new_list.append(-1)
else:
my_list[i] = count
count += 1
new_list.append(my_list[i])
【问题讨论】:
-
你能举一个预期输入和输出的例子吗?
-
你不是在修改数据,你只是在修改
next_item -
但是,很难说你在做什么。欢迎提供 I/O 示例!
-
您也没有检查索引 i 处的值是否为 -1,而是检查 i 本身。这没有多大意义,因为您以声明方式以 i=-1 开始循环
标签: python list sanity-check