Python
90 ~40 dk
Hafta 1-19 Genel Tekrar
Genel Tekrar
Bu derste ilk 19 haftada öğrendiğimiz konuları pratik örneklerle tekrar edeceğiz.
Mini Proje: Adres Defteri
import json, os
DOSYA = "rehber.json"
def yukle():
if os.path.exists(DOSYA):
with open(DOSYA, "r", encoding="utf-8") as f:
return json.load(f)
return []
def kaydet(rehber):
with open(DOSYA, "w", encoding="utf-8") as f:
json.dump(rehber, f, ensure_ascii=False, indent=2)
def ana_menu():
rehber = yukle()
while True:
print("\n📱 ADRES DEFTERİ")
print("1. Kişi Ekle 2. Listele 3. Ara 4. Sil 5. Çıkış")
secim = input("Seçim: ")
if secim == "1":
kisi = {
"ad": input("Ad: "),
"tel": input("Telefon: "),
"email": input("E-posta: ")
}
rehber.append(kisi)
kaydet(rehber)
print("✅ Eklendi!")
elif secim == "2":
for i, k in enumerate(rehber, 1):
print(f"{i}. {k['ad']} - {k['tel']} - {k['email']}")
elif secim == "3":
q = input("Aranacak: ").lower()
for k in rehber:
if q in k["ad"].lower() or q in k["tel"]:
print(f"🔍 {k['ad']} - {k['tel']}")
elif secim == "4":
ad = input("Silinecek kişi adı: ")
rehber = [k for k in rehber if k["ad"].lower() != ad.lower()]
kaydet(rehber)
elif secim == "5":
break
ana_menu()✅ Bu proje şunları kapsar: Dosya işlemleri, JSON, dictionary, listeler, döngüler, fonksiyonlar, hata yakalama.