Подскажите, пожалуйста, как удалить из списка все элементы, встречающиеся в другом списке (Решено)

ks1891

Новичок
Пользователь
Янв 15, 2021
41
0
6
Python:
all = []; spam = []; valid = []; c = 0
while True:
    a = input()
    all.append(a)
    if a == "END":
        c += 1
    if c == 2:
        break
valid = all[:all.index("END")]
spam = all[all.index("END") + 1: -1]

for i, value in enumerate(valid):
    for a in range(len(spam)):
        if value in spam[a]:
            valid.remove(value)
print(valid)

Здравствуйте!
Записываю в valid спискок аккаунтов:
@nogotochki555
@mama_leonida
@papa_leonida
@ivan_ivanov
@nogotochki555
@other_cakes
@petr_petrov
@mama_leonida

Когда пытаюсь удалить элементы, встречающиеся в spam:
@nogotochki555
@other_cakes

удаляет только @nogotochki555, а @other_cakes не трогает. Не очень понимаю, как сделать, чтобы он все значения перебирал
 

weamagic

Пользователь
Пользователь
Июл 11, 2020
141
13
18
Попробуй использовать не итератор, а обычный условный цикл - он надежнее.
 

ks1891

Новичок
Пользователь
Янв 15, 2021
41
0
6
Попробуй использовать не итератор, а обычный условный цикл - он надежнее.
попробовал уже. Все - равно что-то не идет
 

ks1891

Новичок
Пользователь
Янв 15, 2021
41
0
6
Python:
all = []
c = 0
while True:
    a = input()
    all.append(a)
    if a == "END":
        c += 1
    if c == 2:
        break
week = all[:all.index("END")]
spam = all[all.index("END") + 1: -1]

print(len(set(item for item in week if item not in spam)))
 

Форум IT Специалистов