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

В тази статия ще обсъдим комплекти в Python. Python е много универсален език и бързо се превръща в един от най-добрите езици в областта на науката за данни, тъй като е лесен за разбиране за четене и писане, а също така се основава на концепцията за OOPs. Set е неподредена колекция, която е представена от къдрави скоби в Python. Неподреденото тук означава, че не сте сигурни в кой ред ще се появят артикулите. Set е различен от списък, че може да съхранява само уникални елементи и без дублиращи се елементи.

Синтаксис:

Както обикновено python, синтаксисът като цяло е лесен. Синтаксисът за набор от python е следният:

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

Тук първият набор е името на променливата, в която се съхранява наборът. Къдравите скоби () представляват набор и тъй като добавяме низови стойности, така че са необходими двойни / единични обърнати запетаи. Стойностите в набора са разделени със запетаи. Сега, тъй като видяхме синтаксиса на множеството с пример в Python. Нека сега обсъдим различните методи, използвани в наборите Python.

Различни методи в комплектите Python

Нека да преминем през различните методи, представени като вграден Python for Sets.

1. 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 Notebook.

Ако видите резултата първия път, когато се използва функцията add (), той добавя елемента и размерът на набора се увеличава с един, както е показано, когато изпълняваме първото изявление за печат, но втори път, когато използваме метода add () за добавяне на същия елемент (sepoy) като първия път, когато изпълняваме оператора за печат, виждаме същите елементи да се показват без увеличаване на размера на множеството, което означава, че набора не приема дублиращи се стойности.

2. clear (): Както подсказва името, той премахва всички елементи от набора. Той нито приема нито един параметър, нито връща някаква стойност. Просто трябва да извикаме ясния метод и да го изпълним. Нека разгледаме един пример:

Код:

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

Нека да разгледаме резултата след извършване на същия код в тетрадката на юпитера.

И така, горният скрийншот показва, че преди да изпълним чистия метод, списъкът беше отпечатан с елементи и след това, когато изпълнихме метода 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. разлика (): Това е много важна функция. Тази функция връща набор, който е разликата между два множества. Имайте предвид, че тук разликата не означава изваждане, защото тук тя е разликата между броя на елементите в два множества, а не стойностите на елементите. Ето например набор А1 - набор А2 означава, че връща набор с елементи, присъстващи в А1, но не и в А2 и обратно, в случай на набор А2 - набор А1 (присъства в А2, но не и в А1). Същото ще бъде обяснено по-долу с помощта на пример.

Код:

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

Сега нека разгледаме изхода, предоставен на екрана по-долу.

Сега, в горната снимка на екрана, ако погледнете внимателно, има разлика между първия и втория резултат. В първия резултат са показани елементите, които са в A, но не и в B, докато във втория резултат са показани елементи, присъстващи в B, но не и в A.

5. пресичане (): Много се различава от предишния метод за вграждане. В този случай само елементите, които са общи както в множествата, така и в множество множества (в случай на повече от два набора) се връщат под формата на набор. Сега нека преминем с пример.

Код:

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

В горната снимка на екрана можете да видите изхода на кода при изпълнение. Ако погледнете внимателно, ще намерите всички стойности от А1 и всички уникални стойности от другите два набора.

7. issubset (): Тази функция връща булеви стойности, които са верни или неверни. Ако всички елементи на един набор присъстват в друг набор, то той връща вярно в противен случай невярно. Ще видим пример за същото, за да разберем по-добре.

Код:

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

Ако видите горната екранна снимка на изхода, можете да видите, че A2 има всички елементи на A1, но A1 няма всички елементи на A2. Следователно А1 е подмножество на А2.

8. issueperset (): Тази функция връща булеви стойности, които са верни или неверни. Ако набор съдържа всички елементи от друг набор, тогава този набор може да се нарече суперсет на другия набор и стойността, върната от функцията, е иначе иначе е невярна. Ще видим пример за същото, за да разберем по-добре.

Код:

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

Както можете да видите от изходната екранна снимка, че вторият набор A2 съдържа всички елементи от набор A1. Следователно това е суперсет от А1. Същото не е вярно за А1 по отношение на А2, следователно той връща невярно.

9. премахване (): Тази функция се използва за премахване на елементи от набора. Елементите, които трябва да бъдат премахнати, се предават като аргументи. Функцията премахва елемента, ако присъства в набора, в противен случай връща грешка. Ще изпълним пример, за да проверим това.

Код:

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

Ако видите екрана по-горе, когато кодът се изпълнява, той премахва елемента "Nilanjan", както е присъствал в комплекта, но когато се опитаме да премахнем "Rocky", той ни дава грешка, тъй като "Rocky" не присъства в комплекта.

10. изхвърли (): Този вграден метод се използва и за премахване на елементи от набора, но е различен от метода за премахване, който обсъдихме по-рано. Ако елементът присъства в набора, той премахва елемента, но ако е наличен, той не връща грешка и обикновено просто отпечатва набора. Ще видим пример за това

Код:

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

Ако видим горната снимка на екрана, можем да видим, че въпреки че „Rocky“ не присъства в набора, не виждаме грешка да се показва за разлика от случая на метод за премахване, където е била показана грешка.

заключение

В тази статия сме обсъдили концепцията за множествата в python и различните функции, които могат да се използват или прилагат в множествата. Наборите, както беше обсъдено, са важни в python и вградените методи се използват за манипулиране на наборите, а също и за извършване на операции с набори.

Препоръчителни статии

Това е ръководство за комплектите Python. Тук обсъждаме въвеждането на комплекти Python, различни методи в комплектите Python, заедно със Syntax. Можете също да прегледате и другите ни предложени статии, за да научите повече -

  1. String Array в Python
  2. Какво е Python
  3. NLP в Python
  4. Python скриптов език ли е?
  5. Функции на Python
  6. String Array в JavaScript
  7. Пълно ръководство за струнен масив в С