Bir program yapmaya çalışıyorum, girişte bir kod girebilirsiniz ve program kodu çalıştıracaktır.exec programım çalışmıyor
Enter'a bastığınızda, program bir öncekinin altındaki başka bir giriş oluşturur.
"Program Yürüt" düğmesine bastığınızda, yazdığınız tüm kodlar çalıştırılacak.
from tkinter import *
class Application(Frame):
def __init__(self, master):
Frame.__init__(self, master)
self.grid()
self.entry1=Entry(self)
self.entry1.grid(row=0, column=0, sticky=W)
self.bttn1=Button(self, text="Execute code", command=self.execute_code)
self.bttn1.grid(row=1, column=9, sticky=W)
self.rows=0
self.entry1.bind("<Return>", self.down)
def execute_code(self):
self.code=self.entry1.get()
try:
exec(self.code)
except:
print("There is something wrong with this code!")
def down(self,event):
self.rows+=1
entry=Entry(self)
entry.grid(row=self.rows, column=0, sticky=W)
self.code=self.code+"\n"+entry.get()
entry.bind("<Return>", self.down)
root=Tk()
root.title("Executing code")
root.geometry("500x500")
app=Application(root)
Sorun şu ki, düğmeye bastığımda, yalnızca ilk girişi yürütür.
Birisi bana kodumda neyin yanlış olduğunu söyleyebilir mi?
tek bir çok satırlı metin alanı kullanma hakkında ne düşünüyorsunuz? –
Baskı için çalışır (3), ne yapmaya çalışıyorsunuz? –
Ve Enter'a bastığınızda çöküyor. –