for i in list404:
for j in range(len(table)):
if table[j][0] == i:
table.remove(table[j])
for k in range(len(stack)):
if stack[k][0] == i:
stack.remove(stack[k])
for l in range(len(symbols)):
if symbols[l] == i:
symbols.remove(symbols[l])
list404是股票列表。我想删除表,堆栈和名称中显示在列表404中的符号内的股票。表和堆栈是我猜的嵌套列表。结构如下:[[a,b,c],[a,b,c],[a,b,c]]。我只想检查a是否在list404中。如果存在,请从表中删除整个列表。
这是错误。 IndexError:如果table [j] [0] == i:
,则列表索引超出范围有人可以帮我吗???谢谢!
答案 0 :(得分:0)
如Ken White所说,您不应在表的长度循环中从表中删除元素, 我认为除了此以外,您还可以创建一个新列表,如果该项目在您的条件下有效,则将其放在新列表中:
注意:由于我不知道您的数据的结构到底是什么样子,我只写了一个示例代码,但是您可以为您的数据进行更改。
new_table = []
new_stack = []
new_symbols = []
for i in list404:
for j in range(len(table)):
if table[j][0] != i:
new_table.append(table[j])
for k in range(len(stack)):
if stack[k][0] != i:
new_stack.append(stack[k])
for l in range(len(symbols)):
if symbols[l] != i:
new_symbols.append(symbols[l])