Сабақтың тақырыбы: №11 Жиындар
1. Жиындар ұғымы
2. Жиындармен операциялар
Жиындар (set) элементтер жиынын көрсетеді. Жиындарды анықтау үшін ішінде элементтері тізбектелген жүйелі жақша қолданылады.
users = {"Tom","Bob","Alice", "Tom"}
print(users) # {"Tom","Bob","Alice"}
|
Мұнда print функциясы Tom элементін бір рет қана шығарды, себебі жиын тек қайталанбайтын уникалды мәндерден тұрады.
Жиындарды анықтау үшін set() функциясы да қолданылады, онда элементтердің тізімі не кортежі беріледі:
users3 = set(["Mike", "Bill", "Ted"])
|
set функциясын бол жиын құруда қолданған ыңғайлы:
Жиын ұзындығын алу үшін len() кіріктірілген функциясы қолданылады.
users = {"Tom","Bob","Alice"}
print(len(users)} # 3
|
Элементтерді қосу
Жалғыз элементтерді қосу үшін add() функциясы қолданылады.
users = set()
users.add("Sam")
print(users)
|
Элементтерді жою
Бір элементті жою үшін remove() әдісі қолданылады, оның ішінде жойылатын элемент көрсетіледі. Бірақ егер ондай элемент жиында болмаса, қате генерацияланады. Сондықтан жоюдан бұрын осы элементтің бар-жоқтығын in операторы көмегімен тексеріп алу керек:
users = {"Tom", "Bob", "Alice"}
user = "Tom"
if user in users:
users.remove(user)
print(users) # {"Bob", "Alice"}
|
Жою үшін discard() әдісін де қолдануға болады, егер эойылатын элемент жиында жоқ болса, бұл әдіс ерекше жағдай тудырмайды.
user = "Tim"
users.discard(user)
|
Барлық элементтерді жою үшін clear() әдісі қолданылады.
Жиындарға қолданылатын операциялар
copy() әдісінің көмегімен бір жиынның мазмұнын екіншісіне көшіруге болады:
users = {"Tom","Bob","Alice"}
users3 = users.copy()
|
union() әдісі екі жиынды біріктіріп, жаңа жиын қайтарады:
users = {"Tom","Bob","Alice"}
users2 = {"Sam","Kate", "Bob"}
users3 = users.union(users2)
print(users3) # {"Bob", "Alice", "Sam", "Kate", "Tom"}
|
Жиындардың қиылысуы екі жиында да бар элементтерді алуға мүмкіндік береді. intersection() әдісі жиындар қиылысуы операциясын орындап, нәтижесінде жаңа жиын қайтарады.
users = {"Tom","Bob","Alice"}
users2 = {"Sam","Kate", "Bob"}
users3 = users.intersection(users2)
print(users3) # {"Bob"}
|
intersection әдісінің орнына логикалық көбейту операциясын да қолдануға болар еді.
users = {"Tom","Bob","Alice"}
users2 = {"Sam","Kate", "Bob"}
print(users & users2) # {"Bob"}
|
Тағы бір операция жиындар айырымы - бірінші жиында бар, бірақ екінші жиында жоқ элементтерді қайтарады. Жиындар айырымын алу үшін difference әдісін немесе азайту операциясын орындауға болады:
users = {"Tom","Bob","Alice"}
users2 = {"Sam","Kate", "Bob"}
users3 = users.difference(users2)
print(users3) # {"Tom", "Alice"}
print(users - users2) # {"Tom", "Alice"}
|
Достарыңызбен бөлісу: |