Python ensemble de l'Union et définir Intersection fonctionner différemment?

Je suis en train de faire quelques opérations en Python, et j'ai remarqué quelque chose de bizarre..

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

Que du bon, à un comportement attendu - mais avec de l'intersection:

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

Suis-je perdre mon esprit ici? Pourquoi n'est pas définie.intersection() d'exploitation comme je l'avais prévu pour?

Comment puis-je faire l'intersection de plusieurs ensembles comme je l'ai fait avec l'union (en supposant que le [[1,2,3], [2,3,4]] avait un tas entier de plus de listes)? Que serait le "pythonic" manière d'être?

InformationsquelleAutor Bilal Akil | 2013-10-25