Как присоединиться к двум сетам в Python

  1. A |= B присоединиться к двум сетам в Python
  2. A.update(B) для объединения двух наборов на Python
  3. A.union(B) для объединения двух наборов на Python
  4. reduce(operator.or_, [A, B]), чтобы объединить два набора в Python

В этом уроке мы познакомим вас с различными методами объединения двух множеств на Python.

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

A |= B присоединиться к двум сетам в Python

A |= B добавляет все элементы множества B к множеству A.

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

A.update(B) для объединения двух наборов на Python

Метод A.update(B) идентичен A |= B. Модификаторы устанавливают A на место.

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

A.union(B) для объединения двух наборов на Python

A.union(B) возвращает союз наборов A и B. Он не изменяет набор A на месте, но возвращает новый набор.

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

Он идентичен A | B.

reduce(operator.or_, [A, B]), чтобы объединить два набора в Python

operator.or_(A, B) возвращает битвее or из A и B, или объединение множеств A и B, если A и B являются множествами.

reduce на Python 2.x или functools.reduce на обоих Python 2.x и 3.x применяет функцию к элементам итерабельности.

Поэтому, reduce(operator.or_, [A, B]) применяет функцию or к A и B. Она идентична выражению 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 - это встроенная функция на Python 2.x, но она устарела на Python 3.

Поэтому нам нужно использовать functools.reduce, чтобы сделать коды совместимыми на Python 2 и 3.

comments powered by Disqus