Python set Union i set Intersection działają inaczej?

Robię pewne operacje na zestawach w Pythonie i zauważyłem coś dziwnego ..

>> 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])

To dobrze, oczekiwane zachowanie - ale z przecięciem:

>> set([1,2,3]) & set([2,3,4])
set([2, 3])
>> set().intersection(*[[1,2,3], [2,3,4]])
set([])

Czy tracę tu swój umysł? Dlaczego funkcja set.intersection () nie działa tak, jak powinienem?

Jak mogę zrobić przecięcie wielu zestawów, tak jak w przypadku związku (zakładając, że[[1,2,3], [2,3,4]] miałeś więcej list? Czym byłby „pytoniczny” sposób?

questionAnswers(4)

yourAnswerToTheQuestion