tkinter程序无法获取用户输入存入列表,运行无反馈如何解决
问题原因
你创建的3个输入框对象没有添加到预先定义的my_entries空列表中,点击按钮后遍历my_entries时没有可读取的内容,自然不会有输出。
修正代码
只需要在生成Entry的循环里,把每个输入框实例追加到my_entries列表即可,完整修改后代码如下:
from tkinter import * root = Tk() root.title("MyApp") root.geometry("700x500") my_entries = [] def something(): entry_list = '' for entries in my_entries: entry_list = entry_list + str(entries.get()) + '\n' my_label.config(text=entry_list) for x in range(3): my_entry = Entry(root) my_entry.grid(row=0, column=x, pady=20, padx=5) # 新增这行,把输入框添加到列表 my_entries.append(my_entry) my_button = Button(root, text="set", command=something) my_button.grid(row=1, column=0, pady=20) my_label = Label(root, text='Total Income') my_label.grid(row=4, column=0, pady=20) root.mainloop()
可选优化建议
- 可以给每个输入框添加默认提示文字,引导用户输入对应内容
- 可以对用户输入的内容做格式校验,避免非数字内容存入
- 可以在展示结果时追加求和逻辑,和
Total Income的标签含义匹配
内容的提问来源于stack exchange,提问作者roy
相关产品推荐
相关产品推荐

