While循环-IndexError:列表分配索引超出范围

时间:2019-06-17 16:01:36

标签: python list index-error

当我尝试将while循环与列表结合使用时,我会不断收到索引错误。

我前一段时间写了代码,回到了上面,但是只是无法将我的头缠住以至于找不到我的错误。显然,该错误与我的列表索引太小或太大有关。

indexes = []
#Or indexes[0], but this threw another error
indexes.append(decoded.find(special_string))

x=1
while indexes[x-1] > 0:
    total = sum(indexes)
    indexes[x] = decoded.find(special_string, total)
    x+=1

print(indexes)

我的目标是找到字符串中的所有子字符串(special_string)并获取它们的索引(如果您知道更简单的方法,请告知我)。我想将所有索引写到列表中以备将来使用。

1 个答案:

答案 0 :(得分:2)

我认为您唯一需要进行的更改来自:

indexes[x] = decoded.find(special_string, total) 到:

indexes.append(decoded.find(special_string, total))

由于索引[x]不存在,因此无法分配。