You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python for循环中声明的Entry对象如何单独访问.get()获取数据

你当前的写法存在的问题是:每轮循环都会覆盖myEntry变量,循环结束后该变量仅指向最后生成的那一个Entry组件,自然无法获取其他输入框的内容。

最简单的解决方案是用列表存储所有Entry实例,后续需要取值时遍历列表逐个调用.get()方法即可,参考实现如下:

import tkinter as tk
from tkinter import Entry, Button, Tk

root = Tk()
# 初始化空列表存储所有Entry对象
entry_list = []

for i in range(10):
    myEntry = Entry(root)
    myEntry.pack()
    # 每次生成新的Entry就存入列表
    entry_list.append(myEntry)

# 按钮点击回调函数:批量获取所有输入
def fetch_all_inputs():
    input_values = [entry.get() for entry in entry_list]
    # 此处可根据需求调整对输入值的处理逻辑,比如打印、渲染到界面等
    print("用户输入列表:", input_values)

submit_btn = Button(root, text="提交获取所有输入", command=fetch_all_inputs)
submit_btn.pack()

root.mainloop()

你原本想的「修改for循环内部的对象声明名称」本质是要动态生成变量,这种方式实现繁琐且后续维护性差,不推荐使用。

内容的提问来源于stack exchange,提问作者Robin Eriksson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 01:15:07