Питхон сет је јединствени литерал за филтрирање различитих вредности на листи или низу ставки. За разлику од Питхон листе, речника или набора, он не прихвата дупликате. Дакле, то може бити драгоцен алат за чишћење података.
Али како можете створити скуп и користити га у Питхону? Објаснићемо то у овом посту.
Карактеристике Питхон скупова
Поред тога што не прихвата дупликате, сет литерала има и друге карактеристике које га разликују од осталих типова података. Ево неких његових карактеристика:
- Непроменљив је: то значи да не можете променити вредности скупа када га једном направите.
- Постављени литерал враћа динамички аранжман сваки пут када га направите. У суштини, предмети у комплету су неуређени.
- Будући да представља неуређене ставке, за разлику од литералних спискова и речника, вредности скупа не можете добити по њиховим индексима.
Како створити и користити Питхон сет
Сада када знате основне карактеристике Питхон скупа. Погледајмо неке од начина на које га можете користити у свом програму.
Користите коврџаве заграде за креирање скупа у Питхону. Дакле, скуп је листа предмета у завојним заградама одвојених зарезима:
миСет = {1, 2, "МУО", "Гоогле"}
испис (миСет)
Излаз: {1, 2, "МУО", "Гоогле"}
Такође можете претворити било који други тип података у скуп. На пример, доњи код претвара листу у скуп:
миЛист = [1, 2, „МУО“, „Гоогле“]
миСет = сет (миЛист)
испис (миСет)
Излаз: {1, 2, "МУО", "Гоогле"}
Да бисте били сигурни, можете да проверите тип података миСет:
миЛист = [1, 2, „МУО“, „Гоогле“]
миСет = сет (миЛист)
испис (врста (миСет))
Излаз:
Као што смо раније поменули, скуп не прихвата дупликате. Та функција може бити корисна када желите да очистите низ уклањањем дуплираних вредности.
Доњи код уклања дупликате са листе и приказује излаз као Питхон скуп:
миЛист = [1, 2, 2 „МУО“, „МУО“, „Гоогле“, „Гоогле“]
миСет = сет (миЛист)
испис (миСет)
Излаз: {1, 2, 'МУО', 'Гоогле'}
Да би даље демонстрирао функцију филтрирања скупа, када одштампате дужину скупа, не рачуна се дупле вредности:
миСет = {1, 2, 2, "МУО", "МУО", "Гоогле", "Гоогле"}
испис (лен (миСет))
Излаз: 4
Да бисмо видели бољи случај примене скупа, уклонимо дупликате у следећем низу. То је као да тражите јединствене кључеве у низу.
Да бисте то урадили, претворите речник у скуп:
миДицтион = {
"Манго": 2, "Наранџаста": 2, "шаргарепа": 2, "МУО": "технологија",
„МУО“: „веб“, „Гоогле“: „претрага“, „Гоогле“: „мотор“
}
уникуеСет = сет (миДицтион)
принт ("Ово су јединствени кључеви: {}". формат (уникуеСет))
Излаз: Ово су јединствени кључеви: {'Гоогле', 'Манго', 'МУО', 'Оранге', 'царрот'}
Конверзија изнад аутоматски уклања дуплиране ставке из низа.
Можете да измените горе наведени код користећи фор петљу да би било јасније:
за јединствене елементе у уникуеСет:
штампа (уникат)
Такође можете придружити два сета помоћу унија() метода:
сетА = {1, 3, 5}
сетБ = {1, 4, 6}
невСет = сетА.унион (сетБ)
испис (невСет)
Излаз: {1, 3, 4, 5, 6}
Међутим, горњи код спаја два скупа и уклања двоструке вредности.
Као алтернативу можете користити цев | функција за спајање скупова у Питхону:
сетА = {1, 3, 5}
сетБ = {1, 4, 6}
невСет = сетА | сетБ
испис (невСет)
Излаз: {1, 3, 4, 5, 6}
Такође можете да пронађете разлику између два скупа у Питхону:
сетА = {1, 3, 5}
сетБ = {2, 4, 5,}
принт (сетА.дифференце (сетБ))
Излаз: {1, 3}
Можете пронаћи симетричну разлику између скупова А и Б. Ова метода враћа ставке у било ком скупу, али искључује њихово пресецање. Погледајмо како ово функционише:
сетА = {1, 3, 5}
сетБ = {2, 4, 5,}
испис (сетА ^ сетБ)
Излаз: {1, 2, 3, 4}
Можете и да користите симметриц_дифференце () метода:
сетА = {1, 3, 5}
сетБ = {2, 4, 5,}
испис (сетА.симметриц_дифференце (сетБ))
Излаз: {1, 2, 3, 4}
Погледајмо и како можете пронаћи пресек скупова у наставку:
сетА = {1, 3, 5}
сетБ = {1, 4, 6}
сетЦ = {1, 5, 4}
невСет = сетА.интерсецтион (сетБ, сетЦ)
испис (невСет)
Излаз: {1}
Док можеш додати на листу у Питхону, не можете учинити исто за Питхон скуп. Међутим, можете додати ставку на крај скупа помоћу додати функцију.
Али Питхон додати функција прихвата један аргумент, тако да скупу можете додати само корпицу. Ово враћа угнежђени скуп:
сетА = {1, 3, 5} сетЦ = {1, 3}
невСет = 1, 6
сетЦ.адд (невСет)
принт (сетЦ)
Излаз: {1, (1, 6), 3}
Питхон скуп користи исдисјоинт () метода за проверу да ли су два скупа раздвојена. Затим враћа логичку вредност:
сетА = {1, 3, 5}
сетБ = {1, 4, 6}
финдДисјоинт = сетА.исдисјоинт (сетБ)
принт ("{{је да је сетА дисјумент од Б" .формат (финдДисјоинт))
Резултат: Лажно је да је сетА дисјумент од Б.
Замените да бисте проверили да ли је неки скуп неки други исдисјоинт () са иссубсет ():
финдСубсет = сетА.иссубсет (сетБ)
Можете уклонити елемент из скупа:
сетА = {1, 3, 5}
сетА.ремове (5)
принт (сетА)
Излаз: {1, 3}
Тхе јасно() метода брише елементе у скупу и враћа празан скуп:
сетА = {1, 3, 5}
сетА.цлеар ()
принт (сетА)
Излаз: сет ()
Можете уклонити произвољну ставку из скупа и вратити јој вредност помоћу сет.поп () метода:
сетА = {1, 3, 5}
испис (сетА.поп ())
Такође можете ажурирати Питхон сет методом упдате ():
сетА = {1, 'б'}
сетБ = {2, 4, 5,}
испис (сетА.упдате (сетБ))
принт (сетА)
Излаз: {1, 2, 4, 5, 'б'}
Играјте се са Питхон сетовима
Иако смо видели како можете да користите скуп у Питхону, још увек постоје други практични начини примене у вашем коду. Као што сте видели, може вам добро доћи и приликом чишћења података помоћу Питхона.
Поред скупа, други Питхон типови података или низови имају много примена и различитих апликација. Покушајте да се поиграте са њима како бисте се боље дружили.
Низови и листе су неке од најкориснијих структура података у програмирању - иако их мало људи користи у пуном потенцијалу.
Прочитајте следеће
- Програмирање
- Питхон

Идову је заљубљен у све паметне технологије и продуктивност. У слободно време игра се са кодирањем и пребацује се на шаховску таблу кад му је досадно, али такође воли да се повремено отргне од рутине. Његова страст да људима покаже пут око модерне технологије мотивише га да пише више.
Претплатите се на наш билтен
Придружите се нашем билтену за техничке савете, прегледе, бесплатне е-књиге и ексклузивне понуде!
Још један корак…!
Молимо потврдите своју адресу е-поште у е-поруци коју смо вам управо послали.