В настоящее время, когда вы делаете for pimp in num_list
, вы перебираете ссылку на исходный список num_list
.Таким образом, ваши изменения в pimp
отражаются в оригинальном вложенном num_list
.Чтобы избежать этого, вам нужно создать глубокую копию вашего num_list
в цикле for.Это можно сделать с помощью deepcopy
, который создает копию вложенных списков, включая все подсписки.
from copy import deepcopy
num_list = [[1,2,3,4,5], [1,2,3,4,5]]
for num in [1,2,3,4,5]:
for pimp in deepcopy(num_list):
if num in pimp:
pimp.remove(num)
print(pimp)
[2, 3, 4, 5]
[2, 3, 4, 5]
[1, 3, 4, 5]
[1, 3, 4, 5]
[1, 2, 4, 5]
[1, 2, 4, 5]
[1, 2, 3, 5]
[1, 2, 3, 5]
[1, 2, 3, 4]
[1, 2, 3, 4]