
ich habe ein Problem mit Variablen. Ich habe ein Programm, welches zwei Texte aus einem Entry-Widget in eine Datei schreiben soll. Um dies zu realisieren habe ich folgendes ausgearbeitet:
Code: Alles auswählen
from tkinter import *
import os
def hitenter(self):
enterhit = 1
def setint():
entry.delete(0, END)
entry.insert(END, "Name der Variable:")
while True:
if (enter == 1):
setint_name = entry.get()
enter = 0
break
entry.delete(0, END)
entry.insert(END, "Wert der Variable:")
while True:
if (enter == 1):
setint_val = entry.get()
enter = 0
break
with open('code.txt', 'a') as outfile:
print(setint_name, "=", setint_val, ";", file=outfile)
root = Tk()
root.title("TexttoArduino")
root.resizable(width=False, height=False)
os.system("clear")
entry = Entry(root, width=61)
entry.bind("<Return>", hitenter)
global enter
enter = 0
btn_setint = Button(root, text="Variable verändern", width=17, command=setint)
btn_setint.grid(row=2, column=2, pady=2, padx=2)
entry.focus_set()
root.mainloop()
Code: Alles auswählen
Exception in Tkinter callback
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/tkinter/__init__.py", line 1699, in __call__
return self.func(*args)
File "/Users/Tim/Developing/PythonProjects/TexttoArduino/write.py", line 23, in setint
if (enter == 1):
UnboundLocalError: local variable 'enter' referenced before assignment


