Kod ile program kodlarını değiştirmek

Merhaba. Benim sorum şu mesela bir özelliği devre dışı bırakmak istediğimiz zaman bunu nasıl yapabiliriz? Mesela bu pc de bundan sonra şifre sorma diye uygulamamıza tkinter yardımı ile buton eklesek bu butona bir defa basarsa birdaha şifre istemesin benim aklıma sadece o kodu devre dışı bırakmak geldi ### yazdığımız zaman kodun başına devre dışı oluyor biliyorsunuz tabii başka önerilerede açığım

Bu seçimleri bir dosyaya yazıp bir dahaki açılışta dosyada yazanlara göre işlem yapabilirsiniz.

1 Beğeni

Merhaba,

Ben genelde programlarda bazı ön-tanımlı anahtarlar kullanıyorum. Bu anahtarların değerlerinin değiştirilmesiyle de programın bazı özellikleri değişiyor. Bunun için configparser kütüphanesini kullanıyorum. Mesela basit bir örnek:

import os
import tkinter as tk

from configparser import ConfigParser


def create_defaults(new: str = ""):
    if not os.path.exists("defaults.ini") or new:
        config = ConfigParser()
        config["AUTHENTICATION"] = {"key": "" if not new else new}
        with open("defaults.ini", "w") as f:
            config.write(f)
        
        
def load_defaults():
    config = ConfigParser()
    config.read("defaults.ini")
    return config["AUTHENTICATION"]["key"]
    
    
def activate(toplevel, entry):
    # Burada daha gelişmiş bir doğrulama metodu kullanabilirsiniz.
    if entry.get() == "1234":
        create_defaults(new="1234")
        toplevel.destroy()
        
        
def check_status():
    if load_defaults():
        # Burada yapılması gereken işlemleri tanımlayabilirsiniz.
        return
    else:
        toplevel = tk.Toplevel()
        frame = tk.Frame(master=toplevel)
        frame.pack()
        label = tk.Label(master=frame, text="Activation Key")
        label.pack()
        entry = tk.Entry(master=frame)
        entry.pack()
        button = tk.Button(
            master=toplevel, 
            text="Apply", 
            command=lambda: activate(toplevel, entry)
        )
        button.pack()
        
def main():
    create_defaults()
    root = tk.Tk()
    button = tk.Button(master=root, text="Open", command=check_status)
    button.pack()
    root.mainloop()
    
    
if __name__ == "__main__":
    main()

Bu bana diğer arkadaşın yazdığından daha kolay geldi bunu kullanacağım

yanlış bir şey yaparsan çok fazla hata alırsın(Özelikle ana dosyalarla oynarsan)