Python Kümeler

Hüseyin

Hüseyin

Üye
Top Poster Of Month
Katılım
21 Ocak 2024
Mesajlar
78
Tepkime puanı
27
Puanları
18
Kümeler
Küme bir öğeler topluluğudur. Sizi ilkokul veya lise Matematik dersinize geri götürmeme izin verin. Bir kümenin Matematik tanımı Python'da da uygulanabilir. Küme, sıralanmamış ve indekslenmemiş farklı öğelerden oluşan bir koleksiyondur. Python'da küme benzersiz öğeleri saklamak için kullanılır ve kümeler arasında birleşim, kesişim, fark, simetrik fark, alt küme, süper küme ve ayrık küme bulmak mümkündür.

Küme Oluşturma

set()
yerleşik fonksiyonunu kullanırız.

Boş bir küme oluşturma
Python:
# syntax
st = set()

İlk öğelerle bir küme oluşturma

Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}

Örnek:
Python:
# syntax
fruits = {'banana', 'orange', 'mango', 'lemon'}

Kümenin Uzunluğunu Alma
Bir kümenin uzunluğunu bulmak için len() yöntemini kullanırız.

Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
len(st)

Örnek:

Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
len(fruits)

Kümedeki Öğelere Erişme

Öğelere erişmek için döngüler kullanırız. Bunu döngü bölümünde göreceğiz

Bir Öğeyi Kontrol Etme

Bir öğenin bir listede var olup olmadığını kontrol etmek için üyelik operatörünü kullanırız.
Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
print("st kümesi item3 içeriyor mu? ”, ‘item3’ in st) # Set st item3'ü içeriyor mu? True


Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
print('mango' in fruits ) # True

Bir Kümeye Öğeler Ekleme

Bir küme oluşturulduktan sonra hiçbir öğeyi değiştiremeyiz ve ek öğeler de ekleyebiliriz.

add() kullanarak bir öğe ekleyin
Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
st.add('item5')

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
fruits.add('lime')

update() kullanarak birden fazla öğe ekleme update(), bir kümeye birden fazla öğe eklenmesini sağlar. update() bir liste bağımsız değişkeni alır.
Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
st.update(['item5','item6','item7'])

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
vegetables = ('tomato', 'potato', 'cabbage','onion', 'carrot')
fruits.update(vegetables)

Bir Kümeden Öğeleri Çıkarma
remove()
metodunu kullanarak bir öğeyi kümeden kaldırabiliriz. Eğer öğe bulunamazsa remove() metodu hata verecektir, bu yüzden öğenin verilen kümede var olup olmadığını kontrol etmek iyi olacaktır. Ancak discard() metodu herhangi bir hata oluşturmaz.
Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
st.remove('item2')

pop() yöntemleri bir listeden rastgele bir öğeyi kaldırır ve kaldırılan öğeyi döndürür.

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
fruits.pop()  # kümeden rastgele bir öğeyi kaldırır

Eğer kaldırılan öğeyle ilgileniyorsak.
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
removed_item = fruits.pop()

Kümedeki Öğeleri Temizleme

Eğer kümeyi temizlemek ya da boşaltmak istiyorsak clear metodunu kullanırız.

Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
st.clear()

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
fruits.clear()
print(fruits) # set()

Küme Silme

Eğer kümenin kendisini silmek istersek del operatörünü kullanırız.
Python:
# syntax
st = {'item1', 'item2', 'item3', 'item4'}
del st

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
del fruits

Listeyi Kümeye Dönüştürme
Listeyi kümeye ve kümeyi listeye dönüştürebiliriz. Listeyi kümeye dönüştürmek kopyaları kaldırır ve yalnızca benzersiz öğeler ayrılır.
Python:
# syntax
lst = ['item1', 'item2', 'item3', 'item4', 'item1']
st = set(lst)  # {'item2', 'item4', 'item1', 'item3'} - sıralama rastgeledir, çünkü kümeler genel olarak sırasızdır

Örnek:
Python:
fruits = ['banana', 'orange', 'mango', 'lemon','orange', 'banana']
fruits = set(fruits) # {'mango', 'lemon', 'banana', 'orange'}

Kümeleri Birleştirme

union()
veya update() yöntemini kullanarak iki kümeyi birleştirebiliriz.

Union Bu yöntem yeni bir küme döndürür

Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item5', 'item6', 'item7', 'item8'}
st3 = st1.union(st2)

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
vegetables = {'tomato', 'potato', 'cabbage','onion', 'carrot'}
print(fruits.union(vegetables)) # {'lemon', 'carrot', 'tomato', 'banana', 'mango', 'orange', 'cabbage', 'potato', 'onion'}

Güncelleme Bu yöntem, bir kümeyi verilen bir kümeye ekler
Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item5', 'item6', 'item7', 'item8'}
st1.update(st2) # st2 içeriği st1'e eklenir

Örnek:
Python:
fruits = {'banana', 'orange', 'mango', 'lemon'}
vegetables = {'tomato', 'potato', 'cabbage','onion', 'carrot'}
fruits.update(vegetables)
print(fruits) # {'lemon', 'carrot', 'tomato', 'banana', 'mango', 'orange', 'cabbage', 'potato', 'onion'}

Kesişim Öğelerini Bulma

Kesişim, her iki kümede de bulunan öğelerden oluşan bir küme döndürür. Örneğe bakın
Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item3', 'item2'}
st1.intersection(st2) # {'item3', 'item2'}

Örnek:
Python:
whole_numbers = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
even_numbers = {0, 2, 4, 6, 8, 10}
whole_numbers.intersection(even_numbers) # {0, 2, 4, 6, 8, 10}
python = {'p', 'y', 't', 'h', 'o','n'}
dragon = {'d', 'r', 'a', 'g', 'o','n'}
python.intersection(dragon)     # {'o', 'n'}


Alt Küme ve Süper Küme Kontrolü

Bir küme diğer kümelerin alt kümesi veya üst kümesi olabilir:

Alt küme: issubset()
Süper set: issuperset
Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item2', 'item3'}
st2.issubset(st1) # True
st1.issuperset(st2) # True

Örnek:


Python:
whole_numbers = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
even_numbers = {0, 2, 4, 6, 8, 10}
whole_numbers.issubset(even_numbers) # False, because it is a super set
whole_numbers.issuperset(even_numbers) # True

python = {'p', 'y', 't', 'h', 'o','n'}
dragon = {'d', 'r', 'a', 'g', 'o','n'}
python.issubset(dragon)     # False

İki Küme Arasındaki Farkın Kontrol Edilmesi

İki küme arasındaki farkı döndürür.

Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item2', 'item3'}
st2.difference(st1) # set()
st1.difference(st2) # {'item1', 'item4'} => st1\st2

Örnek:

Python:
whole_numbers = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
even_numbers = {0, 2, 4, 6, 8, 10}
whole_numbers.difference(even_numbers) # {1, 3, 5, 7, 9}

python = {'p', 'y', 't', 'o','n'}
dragon = {'d', 'r', 'a', 'g', 'o','n'}
python.difference(dragon)     # {'p', 'y', 't'}  - sonuç sırasızdır (kümelerin karakteristiği)
dragon.difference(python)     # {'d', 'r', 'a', 'g'}


İki Küme Arasındaki Simetrik Farkı Bulma

İki küme arasındaki simetrik farkı döndürür. Bu, matematiksel olarak her iki kümede de bulunan öğeler hariç, her iki kümedeki tüm öğeleri içeren bir küme döndürdüğü anlamına gelir: (A\B) ∪ (B\A)
Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item2', 'item3'}
# it means (A\B)∪(B\A)
st2.symmetric_difference(st1) # {'item1', 'item4'}

Örnek:

whole_numbers = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
some_numbers = {1, 2, 3, 4, 5}
whole_numbers.symmetric_difference(some_numbers) # {0, 6, 7, 8, 9, 10}

python = {'p', 'y', 't', 'h', 'o','n'}
dragon = {'d', 'r', 'a', 'g', 'o','n'}
python.symmetric_difference(dragon) # {'r', 't', 'p', 'y', 'g', 'a', 'd', 'h'}

Birleştirme Kümeleri

Eğer iki kümenin ortak bir öğesi ya da öğeleri yoksa bunlara ayrık kümeler diyoruz. İki kümenin ortak mı yoksa ayrık mı olduğunu isdisjoint() metodunu kullanarak kontrol edebiliriz.

Python:
# syntax
st1 = {'item1', 'item2', 'item3', 'item4'}
st2 = {'item2', 'item3'}
st2.isdisjoint(st1) # False


Örnek:
Python:
even_numbers = {0, 2, 4 ,6, 8}
odd_numbers = {1, 3, 5, 7, 9}
even_numbers.isdisjoint(odd_numbers) # Doğru, çünkü ortak bir öğe yok

python = {'p', 'y', 't', 'h', 'o','n'}
dragon = {'d', 'r', 'a', 'g', 'o','n'}
python.isdisjoint(dragon)  # Yanlış, ortak öğeler var {'o', 'n'}
 
Geri
Üst