avatar
NeonCevap
42 puan • 73 soru • 75 cevap
✔️ Cevaplandı • Doğrulandı

Python sözlük (Dictionary) nedir

Python'da sözlükleri anlamakta biraz zorlanıyorum. Anahtar ve değer çiftlerinden oluştuğunu biliyorum ama bunu gerçek hayatta nasıl kullanacağımı tam olarak kavrayamadım. Özellikle sözlük içinde nasıl veri ekleyip sileceğim konusu kafamı karıştırıyor.
WhatsApp'ta Paylaş
1 CEVAPLARI GÖR
✔️ Doğrulandı
0 kişi beğendi.
avatar
yavuzhanx
1810 puan • 83 soru • 293 cevap
# 🐍 Python Sözlük (Dictionary) Nedir? - Ders Notu

📚 Tanım ve Temel Kavram

Python programlama dilinde Sözlük (Dictionary), anahtar-değer (key-value) çiftlerinden oluşan, sırasız (Python 3.7+ sürümlerinde ekleme sırası korunur), değiştirilebilir (mutable) ve indekslenebilir bir veri yapısıdır. Listeler ve demetler (tuples) gibi koleksiyonlardan farklı olarak, sözlüklerde elemanlara sayısal indeks yerine benzersiz bir anahtar ile erişilir.

🎯 Sözlüğün Temel Özellikleri

  • 🔑 Anahtarlar benzersizdir - Aynı anahtar birden fazla kez bulunamaz
  • 🔄 Değiştirilebilirdir - Eleman eklenebilir, çıkarılabilir, değiştirilebilir
  • Hızlı erişim - Anahtara göre değere sabit zamanda (O(1)) erişim sağlar
  • 🧩 Esnek yapı - Değerler herhangi bir veri tipinde olabilir (liste, sözlük, fonksiyon vb.)

📝 Sözlük Oluşturma Yöntemleri

1. 🏗️ Doğrudan Oluşturma (Süslü Parantez)

Sözlükler süslü parantez {} içinde anahtar:değer çiftleri şeklinde oluşturulur:

Örnek:

ogrenci = {"ad": "Ahmet", "numara": 12345, "bolum": "Bilgisayar"}

2. 🛠️ dict() Fonksiyonu ile Oluşturma

dict() fonksiyonu ile farklı şekillerde sözlük oluşturulabilir:

  • Anahtar-değer çiftleriyle: dict(ad="Mehmet", yas=25)
  • Liste veya demet çiftleriyle: dict([("a", 1), ("b", 2)])

🔍 Sözlük İşlemleri ve Metotları

📥 Eleman Ekleme ve Değiştirme

Sözlüğe yeni eleman eklemek veya var olanı değiştirmek için köşeli parantez kullanılır:

Örnek:

telefon_rehberi = {}

telefon_rehberi["Ahmet"] = "555-1234" # Yeni ekleme

telefon_rehberi["Ahmet"] = "555-5678" # Değeri değiştirme

📤 Eleman Erişimi

  • sozluk["anahtar"] - Anahtar varsa değeri döndürür, yoksa hata verir
  • sozluk.get("anahtar") - Anahtar varsa değeri döndürür, yoksa None döndürür
  • sozluk.get("anahtar", "varsayılan") - Anahtar yoksa varsayılan değeri döndürür

🗑️ Eleman Silme

  • del sozluk["anahtar"] - Belirtilen anahtarı ve değerini siler
  • sozluk.pop("anahtar") - Belirtilen anahtarı siler ve değerini döndürür
  • sozluk.popitem() - Son eklenen anahtar-değer çiftini siler (Python 3.7+)
  • sozluk.clear() - Tüm elemanları temizler

🔄 Sözlük Döngüleri ve Gezinme

🎪 Sözlük Üzerinde İterasyon

Sözlükler üzerinde farklı şekillerde döngü kurulabilir:

Örnek:

urun = {"ad": "Laptop", "fiyat": 8500, "stok": 15}

  • 🔑 Anahtarlar için: for anahtar in urun: veya for anahtar in urun.keys():
  • 💰 Değerler için: for deger in urun.values():
  • 👥 Anahtar-değer çiftleri için: for anahtar, deger in urun.items():

🧮 Matematiksel İfadelerle İlişkisi

Sözlükler, matematiksel fonksiyonlarla benzerlik gösterir. Bir sözlük, tanım kümesindeki her bir öğeyi (anahtar), değer kümesindeki bir öğeyle (değer) eşleyen bir fonksiyon gibi düşünülebilir:

\( f: A \rightarrow B \) fonksiyonu gibi, sözlük de \( \text{sozluk}: \text{anahtarlar} \rightarrow \text{değerler} \) şeklinde eşleme yapar.

💡 Gerçek Hayat Uygulama Örnekleri

📊 Örnek 1: Öğrenci Bilgi Sistemi

ogrenci = {

"ad": "Zeynep",

"numara": "2023001",

"notlar": {"Matematik": 85, "Fizik": 90, "Kimya": 78},

"kayit_tarihi": "2023-09-15"

}

🛒 Örnek 2: E-ticaret Sepeti

sepet = {

101: {"urun": "Mouse", "adet": 2, "fiyat": 150},

205: {"urun": "Klavye", "adet": 1, "fiyat": 350},

312: {"urun": "Monitör", "adet": 1, "fiyat": 2500}

}

✅ Özet Tablosu

Sözlük Özellikleri:

  • ✅ Anahtar-değer çiftleriyle çalışır
  • ✅ Anahtarlar benzersiz ve değiştirilemez (immutable) olmalı
  • ✅ Değerler herhangi bir veri tipinde olabilir
  • ✅ Hızlı arama ve erişim sağlar
  • ❌ Sıralı değildir (Python 3.6 öncesi)

🎓 Pratik Alıştırma Önerisi

1. Bir iletişim rehberi sözlüğü oluşturun

2. Kullanıcıdan alınan verilerle dinamik sözlük oluşturun

3. İç içe sözlüklerle karmaşık veri yapıları tasarlayın

4. Sözlük metotlarını (update(), copy(), setdefault()) deneyin

📌 Not: Sözlükler, Python'da en sık kullanılan ve en güçlü veri yapılarından biridir. JSON verileriyle doğrudan uyumlu olmaları, web API'leri ve veritabanı işlemlerinde oldukça kullanışlı olmalarını sağlar.

Yorumlar