IndexError: список индекса вне диапазона с вложенным списком - PullRequest
0 голосов
/ 13 февраля 2019
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]].Все, что я хочу, это проверить, есть ли в списке 404.Если он существует, удалите весь список из таблицы.

Вот ошибка.IndexError: перечислить индекс вне диапазона, если таблица [j] [0] == i:

Может кто-нибудь помочь мне с этим ???Thx!

1 Ответ

0 голосов
/ 14 февраля 2019

Как сказал Кен Уайт , вы не должны удалять элементы из таблицы в цикле его длины, я думаю, вместо этого вы можете просто создать новый список, и если элемент действителен в ваших условиях,поместите его в новый список:

примечание: поскольку я не знаю, как именно выглядит структура ваших данных, я просто пишу пример кода, но вы можете изменить его для своих данных.

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])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...