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

如何为循环创建的Tkinter Entry组件分别添加1到10的不同值?

解决Tkinter循环创建Entry时依次插入1-10数值的问题

你当前代码中所有Entry都插入1,是因为循环里没有跟踪每个Entry的顺序编号,直接固定插入了常量1。只需在循环中获取每个Entry的序号,就能实现依次插入1到10的需求。

修改后的代码

from tkinter import *

root = Tk()
root.title("")
root.geometry("500x400")
canva = Canvas(root, width=450, height=350, highlightbackground="black")

# 通过enumerate获取从1开始的序号,对应每个Entry的位置
for num, y_pos in enumerate(range(40, 240, 21), start=1):
    Abent = Entry(root, width=10)
    canva.create_window(50, y_pos, anchor="nw", window=Abent)
    Abent.insert(0, num)  # 插入当前序号数值

canva.pack()
root.mainloop()

原理说明

  • enumerate(range(40, 240, 21), start=1) 会为range生成的每个y坐标值绑定一个从1开始的序号num,刚好对应你需要的1到10。
  • 每次循环创建Entry时,将当前的num插入进去,就能实现第一个Entry插1,第二个插2,直到最后一个插10的效果。

内容的提问来源于stack exchange,提问作者Yiğit Kağan Alpaslan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 22:50:45