HOWTO · Python
Como juntar dois conjuntos em Python
Este artigo tutorial introduz como juntar dois conjuntos em Python.
Nesta página
Neste tutorial, vamos introduzir diferentes métodos para juntar dois conjuntos em Python.
A |= BA.update(B)A.union(B)reduce(operator.or_, [A, B])
A |= B para juntar dois conjuntos em Python
A |= B adiciona todos os elementos do array B para definir A.
>>> A = {4, 5, 6, 7}
>>> B = {6, 7, 8, 9}
>>> A |= B
>>> A
{4, 5, 6, 7, 8, 9}
A.update(B) para juntar dois conjuntos em Python
A.update(B) método é idêntico a A |= B. Ele modifica a opção A no lugar.
>>> A = ["a", "b", "c"]
>>> B = ["b", "c", "d"]
>>> A.update(B)
>>> A
["a", "b", "c", "d"]
A.union(B) para juntar dois conjuntos em Python
A.union(B) devolve a união dos conjuntos A e B. Ele não modifica o array A no lugar, mas retorna um novo array.
>>> A = {4, 5, 6, 7}
>>> B = {6, 7, 8, 9}
>>> A.union(B)
{1, 2, 3, 4, 5, 6}
>>> A
{1, 2, 3, 4}
É idêntico a A | B.
reduce(operator.or_, [A, B]) para unir dois conjuntos em Python
O operator.or_(A, B) devolve o bitwiser or de A e B, ou união de conjuntos A e B se A e B são arrays.
reduce em Python 2.x ou functools.reduce em Python 2.x e 3.x aplica a função aos itens do iterável.
Portanto, reduce(operator.or_, [A, B]) aplica a função ou a A e B. É idêntica à expressão 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}
reduce é a função incorporada em Python 2.x, mas é depreciada em Python 3.
Portanto, precisamos utilizar functools.reduce para tornar os códigos compatíveis em Python 2 e 3.