Дәріс
№11
Сабақтың тақырыбы: №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"}
|
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.