Python, öğrenmesi kolay bir dil. Basit sözdizimi ve zengin kütüphaneleri sayesinde kısa sürede sonuç almanı sağlar. Bu yazıyı bitirdiğinde, kendi yazdığın bir programı komut satırında çalıştırmış olacaksın. Hazırsan başlayalım.
Başlamak İçin Ne Gerekli?
Öncelikle bilgisayarında Python yüklü olmalı. Kurulu değilse python.org üzerinden indirip kurabilirsin. Kod yazmak için Not Defteri bile olur, ama VS Code gibi bir düzenleyici işini kolaylaştırır. Masaüstünde veya istediğin bir klasörde yeni bir dosya aç ve adını todo.py
yap.
İlk Çalışır Hâl: Basit To-Do Programı
Aşağıdaki kodu dosyana yapıştır. Bu sürüm, görev ekleme, görüntüleme, silme ve çıkış yapma seçenekleri olan basit bir menü sunar. Okurken yorum satırlarına (başında #
olan satırlar) göz at; ne yaptığımızı kısa kısa anlatırlar.
# Yapılacaklar Listesi Programı (temel sürüm)
todo_list = [] # Görevleri tutacağımız liste
def menu():
print("\n--- Yapılacaklar Listesi ---")
print("1. Görev Ekle")
print("2. Görevleri Görüntüle")
print("3. Görev Sil")
print("4. Çıkış")
while True:
menu()
secim = input("Seçiminizi yapın (1-4): ").strip()
if secim == "1":
gorev = input("Eklemek istediğiniz görevi yazın: ").strip()
if gorev:
todo_list.append(gorev)
print(f"'{gorev}' listeye eklendi.")
else:
print("Boş görev eklenemez.")
elif secim == "2":
print("\n--- Mevcut Görevler ---")
if not todo_list:
print("Henüz hiç görev yok.")
else:
for i, gorev in enumerate(todo_list, start=1):
print(f"{i}. {gorev}")
elif secim == "3":
if not todo_list:
print("Silinecek görev yok.")
else:
for i, gorev in enumerate(todo_list, start=1):
print(f"{i}. {gorev}")
sil_index = input("Silmek istediğiniz görev numarasını girin: ").strip()
if sil_index.isdigit():
s = int(sil_index)
if 1 <= s <= len(todo_list):
silinen = todo_list.pop(s - 1)
print(f"'{silinen}' listeden silindi.")
else:
print("Geçersiz numara.")
else:
print("Lütfen sayı girin.")
elif secim == "4":
print("Programdan çıkılıyor...")
break
else:
print("Geçersiz seçim. 1-4 arasında bir değer girin.")
Nasıl çalıştırılır? Komut satırını (Terminal) aç, dosyanın olduğu klasöre geç ve şu komutu yaz:
python todo.py
Ekranda menüyü göreceksin. 1’e basıp görev ekleyebilir, 2 ile listeyi görebilir, 3 ile silme yapabilir, 4 ile çıkabilirsin.
Kodun Mantığı: Kısa ve Net Açıklama
Liste: todo_list
tüm görevleri tutar. Yeni görev eklenince bu listeye append()
ile ekliyoruz. Silerken pop()
kullanıyoruz.
Menü: menu()
ekrana seçenekleri basar. Her turda çalışır, böylece tekrar tekrar işlem yapabilirsin.
Döngü: while True
programı, sen “Çıkış” demedikçe açık tutar.
Koşullar: if / elif / else
blokları, girdiğin seçime göre ne yapılacağını belirler.
Küçük Bir Dokunuş: Tarih Ekleme
Görevlerin ne zaman eklendiğini görmek istemez misin? Bunun için tarihi otomatik ekleyelim. Üst kısma bir satır ekleyip, ekleme adımını güncelleyelim.
from datetime import datetime # <-- dosyanın en üstüne ekle
# ... diğer kodlar aynı ...
if secim == "1":
gorev = input("Eklemek istediğiniz görevi yazın: ").strip()
if gorev:
zaman = datetime.now().strftime("%Y-%m-%d %H:%M")
todo_list.append(f"{gorev} (eklenme: {zaman})")
print(f"'{gorev}' listeye eklendi.")
else:
print("Boş görev eklenemez.")
Artık her görev, yanında eklenme tarihiyle birlikte görünecek. Bu, özellikle gün içinde eklediğin işlerin takibini kolaylaştırır.
Bir Tık Daha Kullanışlı: Dosyaya Kaydet ve Yükle
Programdan çıkınca görevlerin kaybolmasın istiyorsan, basitçe bir metin dosyasına kaydedebilir ve program açıldığında geri yükleyebilirsin. Aşağıdaki gibi iki yardımcı fonksiyon yazalım ve program açılışında/yeni değişiklikte kullanalım.
import os
DOSYA_ADI = "todo.txt"
def kaydet():
with open(DOSYA_ADI, "w", encoding="utf-8") as f:
for gorev in todo_list:
f.write(gorev + "\n")
def yukle():
if os.path.exists(DOSYA_ADI):
with open(DOSYA_ADI, "r", encoding="utf-8") as f:
for satir in f:
temiz = satir.strip()
if temiz:
todo_list.append(temiz)
# Program başında var olan görevleri yükle
yukle()
# ... ardından menülü döngü başlar ...
Şimdi bir görev eklediğinde veya sildiğinde kaydet()
çağırırsan, değişiklikler diske yazılır. Örneğin ekleme ve silme işlemlerinin sonunda kaydet()
demek yeterli.
# Ekleme adımında:
todo_list.append(f"{gorev} (eklenme: {zaman})")
kaydet()
# Silme adımında:
silinen = todo_list.pop(s - 1)
kaydet()
Bu kadar basit bir kaydetme/yükleme işlemi ile programın günlük hayatta daha işe yarar hâle gelir. İster alışveriş listesi, ister çalışma planı, ister ertesi gün yapılacak işler… Ne istersen.
Devamı İçin Fikirler
Programın çalışıyor; şimdi onu ufak adımlarla geliştirebilirsin:
- Tamamlandı işareti: Bir görevi “tamamlandı” olarak işaretleyip, listede farklı göstermeyi deneyebilirsin (ör. başına
[x]
eklemek gibi). - Öncelik: Görevleri “yüksek/orta/düşük” şeklinde saklayabilir, görüntülerken sıralayabilirsin.
- Basit arayüz: Komut satırı yerine pencere isteyenler için
tkinter
ile küçük bir pencere uygulaması yazılabilir. - Hata kontrolü: Yanlış girişlerde daha açıklayıcı mesajlar göstermek, deneyimi iyileştirir.
Özet ve Kapanış
Bu yazıda, sıfırdan başlayıp Python ile basit bir yapılacaklar listesi programı yazdık. Liste yapısı, döngü ve koşullar gibi temel kavramları gördük. Sonra küçük dokunuşlarla tarih ekleme ve dosyaya kaydetme özellikleri ekledik. Hepsi anlaşılır, kısa adımlarla ilerledi.
Programlamada en iyi öğrenme yolu, yaparak öğrenmek. Bu kodla oynayıp yeni özellikler ekledikçe, hem Python’a alışacak hem de kendi ihtiyacına uygun araçlar geliştirebileceksin. Unutma: Büyük projeler, böyle küçük ve basit adımlarla başlar.
Takıldığın yer olursa kodu parça parça çalıştır, ekrana print()
ile ara sonuçlar yazdır, hatayı sakince oku. Birkaç denemeden sonra sorunun nerede olduğunu rahatça bulabildiğini göreceksin. Şimdiden eline sağlık, iyi kodlamalar!