პითონის ნაკრები

Python Sets არის კოლექციის ტიპი, რომელიც შეიცავს უწესრიგო კოლექცია უნიკალური და უცვლელი ობიექტები. სხვა სიტყვებით რომ ვთქვათ, 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'}

საინტერესო სტატიები