• Почему в python вылетает ошибка list index out of range?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Вы вот здесь делаете присвоение.
    n = h
    n.remove(n[j])
    if h[j] not in n:
        print(h[j])

    В питоне переменные работают не так как в других языках программирования. n и h - это после присвоения два имени одного и того же объекта (списка). Удаляя из него элемент вы тут же его пытаетесь получить в этом же объекте из под другого имени.
    Вместо присвоения такого, делайте так:
    n = h[:]
    Это скопирует список, а не создаст еще одно имя старому.
    Ответ написан
    3 комментария