Eğitim Python [Veri Yapıları - Listeler, Tuple, Set ve Dictionary]

1. Bölüm: Listeler

1.1. Liste Nedir?
  • Açıklama: Listeler, Python'da birden fazla öğeyi tek bir değişkende saklamanıza olanak tanır. Listenin en önemli özelliği, öğelerinin sıralı olması ve değiştirilebilir (mutable) olmasıdır.
  • Kod Örneği
Python:
meyveler = ["Elma", "Muz", "Kiraz"]
print(meyveler)  # ['Elma', 'Muz', 'Kiraz']
1.2. Liste Yaratma ve Eleman Ekleme/Çıkarma
  • Açıklama: Listeye eleman eklemek veya çıkarmak için çeşitli yöntemler kullanılır.
  • Kod Örneği
Python:
meyveler.append("Portakal")  # Eleman ekler
meyveler.remove("Muz")       # Eleman çıkarır
1.3. İleri Seviye Liste İşlemleri
  • Açıklama: Listelerle dilimleme (slicing), sıralama (sorting), eleman arama (searching) gibi işlemler yapabilirsiniz.
  • Kod Örneği:
Python:
sayilar = [10, 20, 30, 40, 50]
print(sayilar[1:4])  # [20, 30, 40]
sayilar.sort(reverse=True)
print(sayilar)  # [50, 40, 30, 20, 10]
1.4. Liste İçinde Liste (Nested Lists)
  • Açıklama: Bir liste içinde başka bir liste barındırabiliriz. Bu, veri yapılarında çoklu seviyeler ile çalışmayı sağlar.
  • Kod Örneği
Python:
siniflar = [["Ali", "Ayşe"], ["Fatma", "Mehmet"]]
print(siniflar[0][1])  # Ayşe
1.5. Liste Üreteçleri (List Comprehension)
  • Açıklama: List comprehension, hızlı ve etkili bir şekilde yeni listeler yaratmayı sağlar.
  • Kod Örneği
Python:
kareler = [x**2 for x in range(10)]
print(kareler)  # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

2. Bölüm: Tuple (Demet)

2.1. Tuple Nedir?
  • Açıklama: Tuple, tıpkı liste gibi birden fazla öğeyi saklar ancak tuple'lar değiştirilemez (immutable) veri yapılarıdır.
  • Kod Örneği
Python:
renkler = ("Kırmızı", "Yeşil", "Mavi")
print(renkler)  # ('Kırmızı', 'Yeşil', 'Mavi')
2.2. Tuple Yaratma ve Kullanımı
  • Açıklama: Tuple'lar listeye benzer şekilde yaratılır ancak bir kez tanımlandıktan sonra elemanları değiştirilemez.
  • Kod Örneği
Python:
tek_sayi = (1, 3, 5, 7)
# tek_sayi[1] = 9  # Bu hata verir
print(tek_sayi[1])  # 3
2.3. Tuple ile Liste Arasındaki Farklar
  • Açıklama: Tuple ve liste arasındaki farklar, tuple'ların daha performanslı ve güvenli olmasını sağlar, çünkü değiştirilemezler.

3. Bölüm: Set (Küme)

3.1. Set Nedir?
  • Açıklama: Set'ler, sırasız ve tekrarsız öğelerden oluşur.
  • Kod Örneği
Python:
sayilar = {1, 2, 3, 4, 4, 2}
print(sayilar)  # {1, 2, 3, 4}
3.2. Set Yaratma ve Kullanımı
  • Açıklama: Set'ler, öğelerin tekrarlanmasını önlemek için kullanılır ve genellikle kümeler arası matematiksel işlemler için kullanılır.
  • Kod Örneği
Python:
harfler = set("abcaabbcc")
print(harfler)  # {'a', 'b', 'c'}
3.3. Setlerde Matematiksel İşlemler
  • Açıklama: Set'ler üzerinde birleşim, kesişim, fark gibi işlemler yapabiliriz.
  • Kod Örnekleri
Python:
set1 = {1, 2, 3}
set2 = {3, 4, 5}

print(set1.union(set2))    # {1, 2, 3, 4, 5}
print(set1.intersection(set2))  # {3}
print(set1.difference(set2))  # {1, 2}

4. Bölüm: Dictionary (Sözlük)

4.1. Dictionary Nedir?
  • Açıklama: Dictionary, anahtar-değer çiftleri ile veri saklamamıza olanak sağlar. Anahtarlar benzersiz olmalı, ancak değerler tekrarlanabilir.
  • Kod Örneği
Python:
ogrenci = {"isim": "Ali", "yas": 21, "dersler": ["Matematik", "Fizik"]}
print(ogrenci["isim"])  # Ali
4.2. Anahtar-Değer Çiftleri ile Çalışma
  • Açıklama: Sözlüklerden veri çekme, ekleme ve güncelleme işlemleri yapabiliriz.
  • Kod Örneği
Python:
ogrenci["yas"] = 22  # Değeri günceller
ogrenci["okul"] = "Üniversite"  # Yeni bir anahtar-değer çifti ekler
4.3. Sözlük Üreteçleri (Dictionary Comprehension)
  • Açıklama: List comprehension'a benzer şekilde, sözlükler için de comprehension kullanarak kısa ve öz sözlükler yaratabiliriz.
  • Kod Örneği
Python:
kareler = {x: x**2 for x in range(5)}
print(kareler)  # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
4.4. İleri Seviye Dictionary İşlemleri
  • Açıklama: Dictionary'de öğeleri güvenli bir şekilde almanın (get methodu) ve birden fazla sözlüğü birleştirmenin yollarını öğreniriz.
  • Kod Örneği
Python:
okul = {"isim": "Ali", "sinif": "10-A"}
adres = {"sehir": "İstanbul", "ilce": "Kadıköy"}

okul.update(adres)  # İki sözlüğü birleştirir
print(okul)
 
Geri
Üst