Python ile Kendi Küçük Programını Yaz

Merhaba! Bu yazıda, Python ile herkesin rahatça anlayıp uygulayabileceği küçük bir program yapacağız. Amaç çok net: bir Yapılacaklar Listesi (To-Do) uygulaması. Görev ekleyip göreceğiz, istersen sileceğiz. Daha önce hiç program yazmadıysan bile sorun değil. Adım adım, karmaşık terimlere girmeden ilerleyeceğiz.

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!

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Scroll to Top