Наборы Python

Наборы Python - гэта тып калекцыі, які ўтрымлівае неўпарадкавана калекцыя унікальны і нязменны аб'екты. Іншымі словамі, набор Python не можа ўтрымліваць дублікаты элементаў, і як толькі набор створаны, элементы не могуць змяняцца.

нататка:Элементы набору нязменныя, гэта значыць, што мы не можам змяніць элементы. Аднак сам набор можна змяняць, гэта значыць мы можам дадаваць і выдаляць элементы з набору.

Парадак не падтрымліваецца. Напрыклад, кожны раз, калі вы друкуеце адзін і той жа набор, парадак элементаў можа быць розным.

У Python наборы ствараюцца з выкарыстаннем фігурных дужак {} і кожны элемент набору аддзяляецца коскай ,.


Як і спісы Python, наборы могуць таксама ўтрымліваць некалькі розных тыпаў аб'ектаў, таму не ўсе яны павінны быць радкамі ці цэлымі лікамі. Напрыклад, мы можам мець набор, які змяшчае змешаныя тыпы:

mixedTypesSet = {'one', True, 13, 2.0}

Як стварыць набор

colorsSet = {'red', 'green', 'blue'} print(colorsSet)

Выхад:


{'red', 'blue', 'green'}

Як атрымаць доступ да прадметаў набору

Мы не можам выкарыстоўваць індэкс для доступу да элемента ў наборы. Гэта таму, што набор не упарадкаваны і не падтрымлівае індэкс. Аднак мы можам выкарыстоўваць for цыкл для перабору элементаў у наборы.

colorsSet = {'red', 'green', 'blue'} for c in colorsSet:
print(c)

Выхад:

green red blue

Як дадаць прадметы ў набор

Каб дадаць адзін элемент у набор, нам трэба выкарыстоўваць add() метад.

Каб дадаць больш аднаго элемента ў набор, нам трэба выкарыстоўваць update() метад.


Даданне аднаго элемента

colorsSet = {'red', 'green', 'blue'} colorsSet.add('yellow') print(colorsSet)

Выхад:

{'blue', 'red', 'green', 'yellow'}

Даданне некалькіх элементаў

colorsSet = {'red', 'green', 'blue'} colorsSet.update(['yellow', 'orange', 'white']) print(colorsSet)

Выхад:

{'white', 'red', 'green', 'yellow', 'orange', 'blue'}

Як выдаліць прадмет з набору

Ёсць два метады выдалення элемента з набору: remove() і discard().

remove() метад выдаляе ўказаны элемент. Калі элемент не існуе, remove() выкліча памылку.


colorsSet = {'red', 'green', 'blue', 'orange'} colorsSet.remove('orange') print(colorsSet)

Выхад:

{'blue', 'green', 'red'}

discard() метад выдаляе ўказаны элемент. Калі элемент не існуе, discard() будзе НЕ выклікаць памылку.

Выдаліце ​​ўсе элементы набору

Каб выдаліць усе элементы і ачысціць набор, мы выкарыстоўваем clear() метад:

colorsSet = {'red', 'green', 'blue', 'orange'} colorsSet.clear() print(colorsSet)

Выхад:


set()

Выдаліць набор цалкам

Каб цалкам выдаліць набор, выкарыстоўвайце del ключавое слова:

colorsSet = {'red', 'green', 'blue', 'orange'} del colorSet print(colorsSet)

Выхад:

Traceback (most recent call last): File 'pythonSet.py', line 78, in
del colorSet NameError: name 'colorSet' is not defined


Як атрымаць даўжыню набору

Вы можаце атрымаць зададзеную даўжыню, патэлефанаваўшы len() метад, напрыклад:

colorsSet = {'red', 'green', 'blue', 'orange'} print(len(colorsSet))

Выхад:


4

Як аб'яднаць два наборы разам

Самы просты спосаб злучыць два наборы - выкарыстаць union() метад, які вяртае новы набор, які змяшчае элементы з аб'яднаных набораў.

colorsSet = {'red', 'green', 'blue', 'orange'} numbersSet = {1, 2, 3, 4} numbersAndColors = colorsSet.union(numbersSet) print(numbersAndColors)

Выхад:

{1, 2, 'blue', 3, 4, 'green', 'red', 'orange'}