How to join two sets in Python

  1. A |= B pour joindre deux ensembles en Python
  2. A.update(B) pour joindre deux ensembles en Python
  3. A.union(B) pour joindre deux ensembles en Python
  4. reduce(operator.or_, [A, B]) pour joindre deux ensembles en Python

Dans ce didacticiel, nous allons introduire différentes méthodes pour joindre deux ensembles en Python.

  1. A |= B
  2. A.update(B)
  3. A.union(B)
  4. reduce(operator.or_, [A, B])

A |= B pour joindre deux ensembles en Python

A |= B ajoute tous les éléments de l’ensembleB à l’ensemble A.

>>> A = {4, 5, 6, 7}
>>> B = {6, 7, 8, 9}
>>> A |= B
>>> A
{4, 5, 6, 7, 8, 9}

A.update(B) pour joindre deux ensembles en Python

La méthode A.update (B) est identique à A | = B. Il modifie le A en place.

>>> A = ["a", "b", "c"]
>>> B = ["b", "c", "d"]
>>> A.update(B)
>>> A
["a", "b", "c", "d"]

A.union(B) pour joindre deux ensembles en Python

A.union(B) renvoie l’union des ensembles A etB. Il ne modifie pas l’ensemble A en place mais renvoie un nouvel ensemble.

>>> A = {4, 5, 6, 7}
>>> B = {6, 7, 8, 9}
>>> A.union(B)
{1, 2, 3, 4, 5, 6}
>>> A
{1, 2, 3, 4}

Il est identique à A | B.

reduce(operator.or_, [A, B]) pour joindre deux ensembles en Python

operator.or_ (A, B) renvoie le bitwiser ou deA et B, ou l’union d’ensembles A et B siA et B sont des ensembles.

reduce en Python 2.x ou functools.reduce en Python 2.x et 3.x applique la fonction aux éléments de l’itérable.

Par conséquent, reduce(operator.or_, [A, B]) applique la fonction ou àA et B. Il est identique à l’expression Python A | B

>>> import operator
>>> from functools import reduce
>>> A = {4, 5, 6, 7}
>>> B = {6, 7, 8, 9}
>>> reduce(operator.or_, [A, B])
{4, 5, 6, 7, 8, 9}
Attention

reduce est la fonction intégrée dans Python 2.x, mais est déconseillée dans Python 3.

Par conséquent, nous devons utiliser functools.reduce pour rendre les codes compatibles en Python 2 et 3.

comments powered by Disqus