Введение в наборы Python

В этой статье мы собираемся обсудить множества в Python. Python является очень универсальным языком, и он быстро становится одним из популярных языков в области науки о данных, поскольку его легко понять как читать и писать, а также на основе концепции ООП. Set - неупорядоченная коллекция, представленная фигурными скобками в Python. Неупорядоченный здесь означает, что вы не уверены, в каком порядке элементы будут отображаться. Набор отличается от списка тем, что он может хранить только уникальные элементы и не дублировать элементы.

Синтаксис:

Как и в целом Python, синтаксис, как правило, легко. Синтаксис для набора Python выглядит следующим образом:

firstset = ("Johnny", "Nilanjan", "Rupa")
print(firstset)

Здесь первый набор - это имя переменной, в которой хранится набор. Фигурные скобки () представляют множество, и, поскольку мы добавляем строковые значения, требуются двойные / одинарные кавычки. Значения в наборе разделены запятыми. Теперь, так как мы видели синтаксис множества с примером на Python. Давайте теперь обсудим различные методы, используемые в наборах Python.

Различные методы в наборах Python

Давайте рассмотрим различные методы, представленные как встроенный Python для множеств.

1. add (): как следует из названия, он используется для добавления нового элемента в набор. Это означает, что вы увеличиваете количество элементов в наборе на один. Здесь одно очень важное знание о наборе, которое необходимо иметь в виду, заключается в том, что элемент добавляется только в том случае, если он еще не присутствует в активах набора, и не принимает дублирующие элементы. Метод add также не возвращает никакого значения. Давайте сделаем пример.

Код:

firstset = ("Johnny", "Nilanjan", "Rupa")
firstset.add("Sepoy")
print("The new word is", firstset)
#to check duplicate property of Set
firstset.add("Sepoy")
print("The new word is", firstset)

Теперь на снимке экрана ниже показан код, который запускается на ноутбуке Jupyter.

Если вы видите выходные данные в первый раз, когда используется функция add (), она добавляет элемент, и размер набора увеличивается на единицу, как показано, когда мы выполняем первый оператор печати, но во второй раз, когда мы используем метод add () чтобы добавить тот же элемент (sepoy), как в первый раз, при выполнении оператора print мы видим, что одни и те же элементы отображаются без увеличения размера набора, что означает, что набор не принимает дублирующих значений.

2. clear (): как следует из названия, он удаляет все элементы из набора. Он не принимает никаких параметров и не возвращает никаких значений. Нам просто нужно вызвать метод clear и выполнить его. Давайте посмотрим на пример:

Код:

firstset = ("Johnny", "Nilanjan", "Rupa")
print("Before clear", firstset)
firstset.clear()
print("After clear", firstset)

Давайте посмотрим на вывод после выполнения того же кода в блокноте jupyter.

Итак, приведенный выше снимок экрана показывает, что до того, как мы выполнили метод clear, список был напечатан с элементами, а затем, когда мы выполнили метод clear (), все элементы были удалены, и у нас остался пустой набор.

3. copy (): этот метод используется для создания поверхностной копии набора. Термин мелкая копия означает, что если вы добавляете новые элементы в набор или удаляете элементы из набора, исходный набор не изменяется. Это основное преимущество использования функции копирования. Мы увидим пример, чтобы понять концепцию мелкого копирования.

Код:

originalset = ("Johnny", "Nilanjan", "Rupa")
copiedset = originalset.copy()
print("originalset:: ", originalset)
print("copiedset:: ", copiedset)
# modify the copiedset to check shallow copy feature
copiedset.add("Rocky")
print("originalset:: ", originalset)
print("copiedset:: ", copiedset)

Теперь давайте проверим вывод в Jupyter Notebook.

Как вы можете видеть, когда мы использовали функцию добавления для добавления нового элемента в скопированный набор, скопированный набор был изменен, но исходный набор остался прежним.

4. разность (): это очень важная функция вставки. Эта функция возвращает набор, который является разницей между двумя наборами. Имейте в виду, что здесь различие не означает вычитание, потому что здесь это разница между количеством элементов в двух наборах, а не значениями элементов. Здесь, например, набор A1 - набор A2 означает, что он возвращает набор с элементами, присутствующими в A1, но не в A2, и наоборот, в случае набора A2 - набор A1 (присутствует в A2, но не в A1). То же самое будет объяснено ниже с помощью примера.

Код:

A1= (24, 35, 34, 45)
A2= (24, 56, 35, 46)
print(A1.difference(A2))
print(A2.difference(A1))

Теперь давайте посмотрим на вывод, представленный на скриншоте ниже.

Теперь на скриншоте выше, если вы посмотрите внимательно, есть разница между первым и вторым результатами. В первом результате показаны элементы, которые находятся в A, но не в B, тогда как во втором результате показаны элементы, присутствующие в B, но не в A.

5. intersection (): он сильно отличается от встроенного набора предыдущего метода. В этом случае только элементы, которые являются общими в обоих наборах или в нескольких наборах (в случае более двух наборов), возвращаются в форме набора. Теперь давайте рассмотрим пример.

Код:

A1= (24, 35, 34, 45)
A2= (24, 56, 35, 46)
A3= (24, 35, 47, 56)
print(A1.intersection(A2, A3))

Как вы можете видеть, три набора имели только два общих элемента: 24 и 35. Следовательно, при выполнении кода он вернул набор, содержащий только 24 и 35.

6. union (): это функция, которая возвращает набор со всеми элементами исходного набора, а также с указанными наборами. Поскольку он возвращает набор, все элементы будут иметь только один вид. Если два набора содержат одинаковое значение, то элемент появится только один раз.

Код:

A1= (24, 35, 34, 45)
A2= (24, 56, 35, 46)
A3= (24, 35, 47, 56)
print(A1.union(A2, A3))

На скриншоте выше вы можете увидеть вывод кода при исполнении. Если вы внимательно посмотрите, вы найдете все значения из A1 и все уникальные значения из двух других наборов.

7. issubset (): эта функция возвращает логические значения, которые являются истинными или ложными. Если все элементы одного набора присутствуют в другом наборе, тогда он возвращает true, иначе false. Мы увидим пример того же, чтобы понять лучше.

Код:

A1 =(3, 6, 8)
A2 =(45, 87, 3, 67, 6, 8)
print(A1.issubset(A2))
print(A2.issubset(A1))

Если вы видите приведенный выше снимок экрана, то увидите, что в A2 есть все элементы A1, но в A1 нет всех элементов A2. Следовательно, A1 является подмножеством A2.

8. issperset (): эта функция возвращает логические значения, которые являются истинными или ложными. Если набор содержит все элементы другого набора, то этот набор можно назвать расширенным набором другого набора, и значение, возвращаемое функцией, равно true, в противном случае - false. Мы увидим пример того же, чтобы понять лучше.

Код:

A1 = (3, 6, 8)
A2 = (45, 87, 3, 67, 6, 8)
print(A1.issuperset(A2))
print(A2.issuperset(A1))

Как видно из выходного скриншота, второй набор A2 содержит все элементы набора A1. Следовательно, это надмножество A1. То же самое не верно для A1 относительно A2, поэтому он возвращает false.

9. remove (): эта функция используется для удаления элементов из набора. Элементы, которые будут удалены, передаются в качестве аргументов. Функция удаляет элемент, если он присутствует в наборе, в противном случае возвращает ошибку. Мы выполним пример, чтобы проверить это.

Код:

firstset = ("Johnny", "Nilanjan", "Rupa")
firstset.remove("Nilanjan")
print(firstset)
# to check error
firstset.remove("Rocky")

Если вы видите скриншот выше, когда код выполняется, он удаляет элемент «Nilanjan», как он присутствовал в наборе, но когда мы пытаемся удалить «Рокки», это дает нам ошибку, поскольку «Рокки» не присутствует в наборе.

10. discard (): этот встроенный метод также используется для удаления элементов из набора, но он отличается от метода удаления, который мы обсуждали ранее. Если элемент присутствует в наборе, он удаляет элемент, но если он присутствует, он не возвращает ошибки и обычно просто печатает набор. Мы увидим пример этого

Код:

firstset = ("Johnny", "Nilanjan", "Rupa")
firstset.discard("Nilanjan")
print(firstset)
firstset.discard("Rocky")
print(firstset)

Если мы увидим приведенный выше снимок экрана, то увидим, что, хотя «Рокки» не присутствует в наборе, мы не увидим никакой отображаемой ошибки, в отличие от метода удаления, где отображалась ошибка.

Вывод

В этой статье мы обсудили концепцию наборов в python и различные функции, которые можно использовать или применять в наборах. Наборы, как обсуждалось, важны в python, и встроенные методы используются для управления наборами, а также для выполнения операций с наборами.

Рекомендуемые статьи

Это руководство по наборам Python. Здесь мы обсуждаем введение наборов Python, различных методов в наборах Python вместе с синтаксисом. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Строковый массив в Python
  2. Что такое Python
  3. НЛП в Python
  4. Python - это язык сценариев?
  5. Особенности Python
  6. String Array в JavaScript
  7. Полное руководство по массиву строк в C