Я делаю некоторый набор операций в Python, и я заметил что-то странное ..Python set Union и set Intersection работают по-разному?
>> set([1,2,3]) | set([2,3,4])
set([1, 2, 3, 4])
>> set().union(*[[1,2,3], [2,3,4]])
set([1, 2, 3, 4])
Это хорошо, ожидаемое поведение - но с пересечением:
>> set([1,2,3]) & set([2,3,4])
set([2, 3])
>> set().intersection(*[[1,2,3], [2,3,4]])
set([])
Могу ли я схожу с ума здесь? Почему функция set.intersection() не работает, как я ожидал?
Как я могу выполнить пересечение множества множеств, как это было с объединением (если [[1,2,3], [2,3,4]]
имел целую группу больше списков)? Каким был бы «пифонический» путь?
Как бы пересекаться много наборов в аналогично тому, как я объединил многих? –
Извините, мой ответ неправильный – Hypuk
@Hypuk Если ответ неверный, то вы можете его удалить (если хотите) –