Я хочу пересечь два списка (с НЕ) и вернуть элементы списка A, которых нет в списке B.
пример:
>>> a = [1,2,3,4,5]
>>> b = [1,3,5,6]
>>> list(set(a) ????? set(b))
[2, 4]
Я хочу пересечь два списка (с НЕ) и вернуть элементы списка A, которых нет в списке B.
пример:
>>> a = [1,2,3,4,5]
>>> b = [1,3,5,6]
>>> list(set(a) ????? set(b))
[2, 4]
Вы ищете разницу между наборами; оператор -
сделает это за вас:
list(set(a) - set(b))
Если вы используете set.difference()
метод, второй операнд не обязательно должен быть установлен, он может быть любым итеративным:
list(set(a).difference(b))
Демо:
>>> a = [1,2,3,4,5]
>>> b = [1,3,5,6]
>>> list(set(a).difference(b))
[2, 4]
Что-то вроде этого?
>>> list(set(a) - set(b))
[2, 4]