我刚到特金特,不知道该怎么做, 我有一段代码,在tkinter中逐行读取。 有一个输入字段来输入文件中的行,当用户按下按钮时,如果
他键入的是文件中的第行。如果不是,则打印“不正确”
我只是不知道如何声明文件中的行,实际上我知道如何使用
对于文件中的行:
但是我的老师告诉我不要在tkinter中使用循环
我的代码:
import tkinter as tk
root = tk.Tk()
def callback(sv):
print(sv.get())
for line in f:
if text == line:
print("correct")
else:
print("incorrect")
return sv.get()
f = open('sentences.txt', 'r')
sv = tk.StringVar(root)
sv.trace("w", lambda name, index, mode, sv=sv: callback(sv))
label = tk.Label(root,text="")
label.pack()
e = tk.Entry(root, textvariable=sv)
tk.Button(root, text="Click for next",
command=lambda: label.config(text=next(f))).pack()
e.pack()
text = e.get()
root.mainloop()
这是一个基于我对你们要求的理解的工作计划。为便于理解而留下评论
您需要在单独的变量中跟踪当前行。试试这个:
FWIW,尽量不要用lambda。它只会把你弄糊涂
相关问题 更多 >
编程相关推荐