Open Source Yapılacaklar Listesi Python

ramda geçici olarak depolanıyor
Kral geçici dediğinde o ram'den silinmiyor gördüğüm kadarı ile düzgün bi .json dosyasına kaydeder ise daha sağlıklı olur hem kullanıcının aklında " bu adam ram'e kısa sürelik kaydediliyor yazmış ben bunu nası temizlerim " diye soru işareti kalmaz.
 
Python dosyasini klasöre atip açınca yapılacak listesi oluşturuyoruz ondan sonra klasörde txt dosyasi olusturuyor koda bunlari ekledim güncellenmiş kod:

Python:
import os

def menu():
    print("\nYapılacaklar Listesi")
    print("1. Görevleri Görüntüle")
    print("2. Görev Ekle")
    print("3. Görevi Tamamla")
    print("4. Çıkış")
    return input("Bir seçenek girin (1-4): ")

def gorevleri_goster(gorevler):
    if not gorevler:
        print("\nYapılacak göreviniz yok.")
    else:
        print("\nYapılacak Görevler:")
        for i, gorev in enumerate(gorevler, 1):
            print(f"{i}. {gorev}")

def gorev_ekle(gorevler, dosya_yolu):
    yeni_gorev = input("Yeni görevinizi girin: ")
    gorevler.append(yeni_gorev)
    with open(dosya_yolu, "a", encoding="utf-8") as dosya:
        dosya.write(f"{yeni_gorev}\n")
    print(f"'{yeni_gorev}' görevi eklendi.")

def gorev_tamamla(gorevler, dosya_yolu):
    gorevleri_goster(gorevler)
    if gorevler:
        tamamlanan = int(input("Tamamladığınız görevin numarasını girin: ")) - 1
        if 0 <= tamamlanan < len(gorevler):
            tamamlanan_gorev = gorevler.pop(tamamlanan)
            print(f"'{tamamlanan_gorev}' görevi tamamlandı!")
            # Görev tamamlandığında dosyadan da silelim
            with open(dosya_yolu, "w", encoding="utf-8") as dosya:
                for gorev in gorevler:
                    dosya.write(f"{gorev}\n")
        else:
            print("Geçersiz görev numarası.")

def gorevleri_yukle(dosya_yolu):
    gorevler = []
    if os.path.exists(dosya_yolu):
        with open(dosya_yolu, "r", encoding="utf-8") as dosya:
            gorevler = [satir.strip() for satir in dosya.readlines()]
    return gorevler

def klasor_ve_dosya_olustur():
    klasor_adi = "Yapilacaklar_Listesi"
    if not os.path.exists(klasor_adi):
        os.mkdir(klasor_adi)
        print(f"{klasor_adi} klasörü oluşturuldu.")
    
    dosya_adi = input("Oluşturulacak .txt dosyasının adını girin: ") + ".txt"
    dosya_yolu = os.path.join(klasor_adi, dosya_adi)

    if not os.path.exists(dosya_yolu):
        with open(dosya_yolu, "w", encoding="utf-8") as dosya:
            dosya.write("")  # Boş dosya oluşturuyoruz
        print(f"{dosya_yolu} dosyası oluşturuldu.")
    
    return dosya_yolu

def main():
    dosya_yolu = klasor_ve_dosya_olustur()
    gorevler = gorevleri_yukle(dosya_yolu)

    while True:
        secim = menu()
        if secim == "1":
            gorevleri_goster(gorevler)
        elif secim == "2":
            gorev_ekle(gorevler, dosya_yolu)
        elif secim == "3":
            gorev_tamamla(gorevler, dosya_yolu)
        elif secim == "4":
            print("Uygulamadan çıkılıyor...")
            break
        else:
            print("Geçersiz seçim. Lütfen tekrar deneyin.")

if __name__ == "__main__":
    main()

hayatımı duzene sokcam sımdı
bencede sok iyi olur
 
Chatgptye yaptırdığım proje

Yapılacaklar listesi oluşturur not tutmak için ideal

Python:
# Yapılacaklar Listesi Uygulaması

def menu():
    print("\nYapılacaklar Listesi")
    print("1. Görevleri Görüntüle")
    print("2. Görev Ekle")
    print("3. Görevi Tamamla")
    print("4. Çıkış")
    return input("Bir seçenek girin (1-4): ")

def gorevleri_goster(gorevler):
    if not gorevler:
        print("\nYapılacak göreviniz yok.")
    else:
        print("\nYapılacak Görevler:")
        for i, gorev in enumerate(gorevler, 1):
            print(f"{i}. {gorev}")

def gorev_ekle(gorevler):
    yeni_gorev = input("Yeni görevinizi girin: ")
    gorevler.append(yeni_gorev)
    print(f"'{yeni_gorev}' görevi eklendi.")

def gorev_tamamla(gorevler):
    gorevleri_goster(gorevler)
    if gorevler:
        tamamlanan = int(input("Tamamladığınız görevin numarasını girin: ")) - 1
        if 0 <= tamamlanan < len(gorevler):
            tamamlanan_gorev = gorevler.pop(tamamlanan)
            print(f"'{tamamlanan_gorev}' görevi tamamlandı!")
        else:
            print("Geçersiz görev numarası.")

def main():
    gorevler = []
    while True:
        secim = menu()
        if secim == "1":
            gorevleri_goster(gorevler)
        elif secim == "2":
            gorev_ekle(gorevler)
        elif secim == "3":
            gorev_tamamla(gorevler)
        elif secim == "4":
            print("Uygulamadan çıkılıyor...")
            break
        else:
            print("Geçersiz seçim. Lütfen tekrar deneyin.")

if __name__ == "__main__":
    main()
guzel proje ama DB ye kaydetse daha guzel olurdu
 

  Şuanda konuyu görüntüleyen kullanıcılar


Üst Alt