首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当我向单个ttk.entry输入文本时,数组中的每个其他ttk.entry都会更改为相同的值。我做错了什么?

当你向单个 ttk.entry 输入文本时,数组中的每个其他 ttk.entry 都会更改为相同的值,这可能是因为你在创建 ttk.entry 时,将它们都绑定到了同一个变量上。

在 Tkinter 中,ttk.entry 是一种用于接收用户输入的小部件。当你创建多个 ttk.entry 时,每个 ttk.entry 都应该绑定到不同的变量上,以便它们可以独立地存储和显示不同的值。

解决这个问题的方法是为每个 ttk.entry 创建一个独立的变量,并将其绑定到相应的 ttk.entry 上。这样,当你向其中一个 ttk.entry 输入文本时,只会更改绑定的变量的值,而不会影响其他 ttk.entry。

以下是一个示例代码,展示了如何正确创建和绑定多个 ttk.entry:

代码语言:txt
复制
import tkinter as tk
from tkinter import ttk

root = tk.Tk()

# 创建多个 ttk.entry,并为每个 ttk.entry 创建独立的变量
entry_vars = []
for i in range(5):
    var = tk.StringVar()
    entry_vars.append(var)
    ttk.Entry(root, textvariable=var).pack()

root.mainloop()

在这个示例中,我们使用了一个列表 entry_vars 来存储每个 ttk.entry 的变量。这样,你就可以通过访问 entry_vars 列表中的不同元素来获取和设置每个 ttk.entry 的值。

希望这个解答对你有帮助!如果你对其他问题有疑问,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python门面担当

Python 有很多可实现 GUI 库,在之前文章中有过一个整理:如何用 GUI 提高 python 程序? 但没有针对某个具体介绍。...Python 内置编辑器 IDLE 就是使用 Tkinter 开发。因此,个人在之前开发,是将 Tkinter 作为首选。...1.创建一个 Tk 窗口对象;2.调用这个对象消息主循环。一个窗口就出现了。在这个窗口之上,可以添加各种输入框、按钮、文本等,可以增加对各种动作处理。...看起来是静止,但程序实际上是在等待你操作:通过与窗口中“控件”进行交互,比如点击按钮、输入文字、勾选选项等,产生不同“事件”,程序再根据预设“响应”处理。...比如输入框、文本框、按钮、下拉菜单、滚动条等等,窗体本身也可以认为是一个控件。一个控件包含了数据和操作,决定了页面上元素放在哪里、长什么样、有什么效果。

2.7K40

Tkinter:Python门面担当

Python 有很多可实现 GUI 库,在之前文章中有过一个整理:如何用 GUI 提高 python 程序? 但没有针对某个具体介绍。...Python 内置编辑器 IDLE 就是使用 Tkinter 开发。因此,个人在之前开发,是将 Tkinter 作为首选。...在这个窗口之上,可以添加各种输入框、按钮、文本等,可以增加对各种动作处理。 以往我们写程序(比如猜数字、罚点球、查天气等)大多是有一个固定执行流程。...看起来是静止,但程序实际上是在等待你操作:通过与窗口中“控件”进行交互,比如点击按钮、输入文字、勾选选项等,产生不同“事件”,程序再根据预设“响应”处理。...比如输入框、文本框、按钮、下拉菜单、滚动条等等,窗体本身也可以认为是一个控件。一个控件包含了数据和操作,决定了页面上元素放在哪里、长什么样、有什么效果。

20920
  • 基于Python+tkinter实现一个简易计算器桌面软件

    今天,我们要一起使用Pythontkinter库,来创建一个简易桌面计算器。1. 为什么选择tkinter?tkinter是Python标准GUI库。...,用于显示和输入数据 self.entry = ttk.Entry(self, width=30) self.entry.grid(row=0, column=0, columnspan=4...我们定义了一个列表,列出了每个按钮文本以及其在网格布局行和列位置:def create_buttons(self): # 按钮及其位置列表 buttons = [ ("...(0, tk.END) # 清空文本框 else: self.entry.insert(tk.END, char) # 文本框插入字符最后,为了启动计算器应用,我们创建一个SimpleCalculator...你可以在此基础上增加更多功能,例如支持更多数学运算、历史记录或皮肤切换等。如果你对编程感到兴趣,鼓励你继续探索。Python和tkinter为你提供了强大工具和无限可能性。

    34341

    笨办法学 Java(三)

    “对于数组orderNumbers每个整数‘num’…”。因此,在此循环主体,num将逐个接受数组每个,并将它们全部显示出来。 在第 22 行,我们让人类输入订单号。...初始化列表最适合相对较小数组,如果数组中有 1000 个,初始化列表就不好玩了。 如果我们希望数组来自文件或者我们在输入代码没有的其他地方,初始化列表就帮不上忙了。...从第 22 行开始,做了一些傻事。在练习结束之前,请不要下判断。 不管你为什么要这样,你看到第 24 行基本上与第 15 行相同吗?第 24 行将一个随机数存储到数组一个位置。哪个位置?...相当肯定这些街道在这些城市并不存在。 如果奇迹般地编造了一个真实地址,请告诉,我会更改它。 练习 54:从文件读取记录 这个练习将您展示如何从文本文件读取记录。...当我们从文本文件读取数据,很多时候我们事先不知道它长度。在最低温度练习向你展示了一个处理这个问题技巧:将项目数量存储为文件第一行。

    17910

    ChatGPT为啥这么强:万字长文详解 by WolframAlpha之父

    ——并且每次都会添加一个词(准确地说,如我所解释,它添加一个“token”,这可能只是单词一部分,这就是为什么它有时会“创造新词”原因)。 在每一步,它都会得到一个带有概率单词列表。...我们就又可以续写文本了: 而每次这样都会有不同随机选择,对应文本也会不同。...让我们先从一个简单问题开始。当我们考虑逐字母(而非逐词)生成英文文本,该如何确定每个字母概率呢? 最简单方法是取一份英文文本样本,然后计算其中不同字母出现频率。...接着,它获取该数组最后一部分并生成一个包含约50,000个数组,这些将转化为不同且可能下一个token概率(是的,恰好有与英语常用词汇相同数量token,尽管只有大约3000个token是完整单词...ChatGPT原始输入是数字数组(到目前为止tokenembedding向量),当ChatGPT“运行”以生成新token,这些数字只是通过神经网络层“传播”,每个神经元“自己事情”并将结果传递给下一层神经元

    58310

    ChatGPT为啥这么强:万字长文详解 by WolframAlpha之父

    ——并且每次都会添加一个词(准确地说,如我所解释,它添加一个“token”,这可能只是单词一部分,这就是为什么它有时会“创造新词”原因)。 在每一步,它都会得到一个带有概率单词列表。...我们就又可以续写文本了: 而每次这样都会有不同随机选择,对应文本也会不同。...让我们先从一个简单问题开始。当我们考虑逐字母(而非逐词)生成英文文本,该如何确定每个字母概率呢? 最简单方法是取一份英文文本样本,然后计算其中不同字母出现频率。...接着,它获取该数组最后一部分并生成一个包含约50,000个数组,这些将转化为不同且可能下一个token概率(是的,恰好有与英语常用词汇相同数量token,尽管只有大约3000个token是完整单词...ChatGPT原始输入是数字数组(到目前为止tokenembedding向量),当ChatGPT“运行”以生成新token,这些数字只是通过神经网络层“传播”,每个神经元“自己事情”并将结果传递给下一层神经元

    77860

    什么对ChatGPT、ChatGLM这样大语言模型说“你是某某领域专家”,它回答会有效得多?(一)

    让 ChatGPT 智能六种策略(上),我们曾提到,在大模型提问,告诉它扮演一个领域专家角色,它回答会更有针对性。 但为什么会这样呢?.../ 原文比较长,把它将分为三部分逐次大家科普,以下为翻译内容,“”为原作者,“注”为理解。‍‍‍‍‍‍‍‍‍‍‍...再次可以构建文本: 每次这样都会做出不同随机选择,并且文本也会不同 - 正如以下 5 个示例所示: 值得注意是,即使在第一步,也有很多可能“下一个单词”可供选择(温度为 0.8),尽管它们概率下降得很快...当我们写到20个字“论文片段”,可能性数量比宇宙粒子数量还多,所以从某种意义上说,它们永远不可能全部写下来。 所以,我们能做些什么?...稍后,我们将讨论如何构造这样函数以及神经网络思想。但现在让我们将该函数视为黑匣子,我们在其中输入手写数字图像(作为像素数组),然后得到这些对应数字: 但这里到底发生了什么

    9510

    什么 SwiftUI 修饰符顺序很重要

    当我们将修饰符应用于 SwiftUI 视图,我们实际上都会创建一个,应用了更改新视图 —— 我们不仅仅是修改现有的视图。...我们将在下一章查看为什么会发生这种情况,但是首先,想看看这种行为实际含义。...如果思考一下修饰符工作原理,您就可以了解为什么会如此:每个修饰符都会创建一个,应用了该修饰符新结构体,而不是在视图上设置属性。 您可以通过查询视图主体类型来窥视 SwiftUI 底层。...:ModifiedContent 当我们应用多个修饰符,它们会叠加在一起:ModifiedContent<ModifiedContent<… 要了解该类型是什么...使用修饰符一个重要副作用是,我们可以多次应用相同效果:每个修饰符都会简单地添加到以前内容

    2.3K20

    Unity基础教程系列(新)(六)——Jobs(Animating a Fractal)

    文本部分写在双引号之间,并且深度整数可以使用加法运算符连接到该文本字符串。 ? ? (四个分形级别随深度减小) 确实,每个级别的深度都会减少,一旦我们创建了正确数量克隆体,该过程就会停止。...此类型将充当数据简单容器,这些数据被捆绑在一起并被视为单个,而不是对象。为了使Fractal其他代码可以访问此嵌套类型内字段,需要将它们公开。...对于其他部分,它是当前级别数组元素,其索引等于分形部分索引。当我们以5步长增加该索引,也需要向其中添加子索引。 ?...为了使之与热重载一起工作,请将Awake也更改为OnEnable。 ? 为了使内容整洁,还请在OnDisable末尾删除所有数组引用。无论如何,我们都会在OnEnable创建新。 ?...但是,当我们为每个部分分配五个子节点,让我们尝试将批次数设为5。 ? 这进一步将我平均更新时间减少到1.7ms。使用较大批处理数量并不能进一步改善,甚至使速度变慢,因此将其保留为5。

    3.5K31

    笨办法学 Python3 第五版(预览)(一)

    不知道如何在我国键盘上输入 # 字符。该怎么? 一些国家使用 ALT 键和其他组合来打印与其语言不同字符。你需要上网搜索如何输入它。 为什么要倒着读代码?...为什么看不懂这个? 尝试将脚本数字改为测量值。这有点奇怪,但谈论自己会让它看起来真实。而且,你刚刚开始,所以不会太有意义。继续前进,更多练习会让你更好地理解。...注意,当我运行它给了它first 2nd,这导致它出现了一个关于“需要超过 3 个来解包”错误,告诉你没有给足够参数。 学习练习 尝试给你脚本提供少于三个参数。看看你会得到什么错误?...不明白你所说改变提示是什么意思。看看变量prompt = '> '。将其更改为其他。你知道这个;这只是一个字符串,你已经做了 13 个练习来创建它,所以花点时间弄清楚。...将要向你介绍函数!Dum dum dah!每个程序员都会滔滔不绝地谈论函数以及它们如何工作和做什么,但我会给你一个你现在可以使用最简单解释。

    19810

    普通人也能看懂大语言模型入门,不要错过哦

    深度学习仍然使用相同基本增量技术来猜测参数。 5. 什么是语言模型? 当我汽车例子时,我们试图让我们神经网络执行与我们数据一致行为。...顶部所有圆圈都连接到每个单词打击臂。所有的打击臂都会接收到一些能量,但是其中一个将会接收到比其他更多能量。 这是一个庞大网络! 但情况会更糟。...然后,只需要担心哪些词大致意味着相同事物,以及接下来怎么“王座”发送大量能量)。 所以,我们要做是这样。...一个经过训练编码器-解码器网络,用于输出与输入相同单词(它是之前相同图像,但用颜色表示激活状态)。 输入单词“king”,一个传感器发送电信号通过编码器,并在中间编码中部分激活了256个。...它在处理医学文本可能表现尚可。一个仅在医学文档上训练语言模型可能对与医学情境相关输入反应非常好,但在回应其他输入,如闲聊或食谱表现得相当糟糕。

    9812

    数组下标越界与内存溢出有关吗_数据量过大数组报下标越界

    这里元素个数就是在定义数组那个方框框里数字,对于多维数组来说,元素个数 = 每个方框框里数字之积。...arr[10],它下标范围是 0–9 ,超出这个范围就会发生下标溢出 以上两张图片是在VS2013里面的运行结果,两次输入下标都会越界,但为什么第一张图报错了数组下标越界),而第二张没有...这是因为VS2013这个编译器在处理数组下标,只认为当引用下标等于数组元素个数时下标越界(可能是怕初学者把数组下标当成是以0开始吧),别的情况别不回去检测和处理(当我输入大于等于11,程序都不会报错...以上是在VC6.0运行结果,VS2013不同,VC6.0里报错出现在输入为11(当输入12也会报错),而输入10并不会报错。...比如下标越界那个例子 i 定义为10,当在VS2013环境下,输入下标值为12,在输出arr[12] = 20 同时,会把i改为20(VS定义两个变量,分配内存时会在两个变量内存空间之间隔出两个空间

    1.7K60

    干货 | 这些小程序技巧,你至少会用到一个!你

    小程序单独设置data对象具体属性 这是一个新手和老手可能都会遇到问题,因为小程序所有数据要响应,必须使用this.setData()方法, 那现在假设有这样一个数据: ?...假设现在数据变成了这样: ? 我们现在只想把discountList数组中选中对象click变为1,怎么办? ? No,No,你会发现这样是不行教你一个简单方法: ? 但是!...小程序接口加密去除昵称数据含有的reshuffle表情(例如emoji) 你有没有遇见过,你要对每个用户微信昵称就行接口发送给后台,但是他随机错了…… 天,因为每次接口都要经过MD5加密,需要将获取用户昵称一起加密发送到后台...,开始毫无知觉拿过来直接扔进去加密,直到用后台人员微信测试,中文验签失败,几周前已经调整过中文验签签名算法,后来发现……他微信昵称里有3个“屁”…… 具体是什么屁…… 你打开你输入emoji...这个时候会出现一种情况,当我点击view,他会跳转到指定页面,当我点击view里面的image,他会跳转2遍指定页面,第一反应就是当年第一个前端项目出现认知,事件冒泡。

    73300

    如何写出专业数据科学代码?你需要知道这6点

    它们都有相同函数名,find_most_common 他们都有一个参数,values 它们都有一个执行大致相同操作主体:计算每个 values 显示次数 它们都返回相同内容:输入参数值中最常见...(即使两种语言之间语法有点不同)。你可以使用这个编写小函数一般原则,每个函数只一件事,将代码分解成更小片段。 为什么是函数?...在这里,将研究如何用一行代码函数添加测试。 在上面编写 python 函数返回了最常见……但是如果有多个返回情况怎么办?...当你需要回到一个项目,或者当你第一次遇到新代码并且需要了解正在发生事情,这会节省你时间。 风格 ---- 当我在这里说「风格」字面意思是「遵循特定风格」。...花一点间让每件事都容易理解和使用,可以节省很多时间。 预测数据变化 所说「数据变化」是指数据差异,这些差异会把事情分解开来。

    1.1K10

    PyTorch 深度学习(GPT 重译)(二)

    最后,我们将涉足简·奥斯汀文本数据。文本数据保留了其有序性,但引入了将单词表示为数字数组问题。 在每个部分,我们将在深度学习研究人员开始地方停下来:就在将数据馈送给模型之前。...这两个示例损失函数在零处有明显最小,并且随着预测任一方偏离真值,它们都会单调增加。由于增长陡峭度也随着远离最小而单调增加,它们都被称为凸函数。...然而,在本章,我们将使用功能更弱但普遍适用方法。我们这样是因为对于我们最终感兴趣深度神经网络,损失不是输入凸函数。...如果我们可以使邻域无限小,就像图 5.6 那样,会发生什么?这正是当我们对参数损失进行导数分析发生情况。...实际上,当我们执行这段代码,PyTorch 记录图在我们调用backward被消耗掉,留下params叶节点。但现在我们想要在开始构建新图之前更改这个叶节点。

    22210

    用 React 和 Vue 构建了同款应用,来看看哪里不一样(2020 版)

    想尽量保持中立,通过这样例子来告诉大家这两种技术执行特定任务是怎样。 当 React Hooks 发布为这篇文章更新了 “2019 版”,用函数式 Hooks 取代了类组件。...首先,“突变数据”到底是什么意思呢?听起来是不是有点高深?其实它基本上就是指更改我们已存储数据。如果我们想将一个人名从 John 更改为 Mark,我们就是在“突变“这份数据。...它工作机制基本上是这个样子: 假设我们要创建一个待办事项列表,我们可能需要创建一个名为 list 变量,它可能需要接收一个由字符串或对象组成数组(比如说给每个 todo 字符串一个 ID 或其他一些东西...在 React ,我们输入字段有一个名为 value 属性。每次通过 onChange 事件侦听器 更改它都会自动更新此。...不管怎样,回到空字符串状态,无论我们在输入字段中键入什么文本都必须绑定到 todo.value。这实际上就是双向绑定——输入字段可以更新 ref() ,反过来后者也可以更新输入字段。

    4.8K30

    重读vue2.0风格指南,整理了这些关键规则

    可以看到,不使用key,删除第二个元素之后,输入框前面的数字显示正确,但是数字3后面的输入内容显示错了,应该显示 是第三个 v-for 使用索引作为 key 点击查看代码演示 ?...可以看到,使用索引作为 key之后,与不使用key效果一样,删除第二个元素之后,输入框前面的数字显示正确,但是数字3后面的输入内容显示错了,应该显示 是第三个 v-for 使用唯一id作为...假设我们现在开发了一个组件,组件上面的data是一个普通对象,那么当我们实例化多个组件时候,所有的实例将共享引用同一个数据对象,任何一个实例对数据修改都会影响到其他实例。...,属性类型是什么,默认什么,是否是必须,这样好处包括: 详细定义了属性各方面信息,所以很容易看懂组件用法; 在开发环境下,如果一个组件提供格式不正确 prop,Vue将会得到警告,...为什么组件名应该又多个单词组成,因为这样可以避免跟现有的以及未来 HTML 元素相冲突。关键是,这样不会被打,当然你也可以,祝你好运,(手动调皮)。

    80750

    什么SwiftUI修饰符顺序很重要?

    当我们将修饰符应用于SwiftUI视图,我们实际上都会创建一个应用了更改新视图——我们不仅会修改现有的视图。...我们将在下一章查看为什么会发生这种情况,但是首先,想看看这种行为实际含义。...如果思考一下修饰符工作原理,您就可以了解为什么会如此:每个修饰符都会创建一个应用了该修饰符新结构体,而不是在视图上设置属性。 您可以通过查询视图主体类型来窥视SwiftUI底层。...:ModifiedContent 当我们应用多个修饰符,它们会叠加在一起:ModifiedContent<ModifiedContent<… 要了解该类型是什么...使用修饰符一个重要副作用是,我们可以多次应用相同效果:每个修饰符都会简单地添加到以前内容

    2.4K10

    干货 | 一篇文章教你用TensorFlow写名著

    首先我们回顾一下,在 DNN 和 CNN ,我们都会将数据分 batch 输入给神经网络,加入我们有 100 个样本,如果设置我们 batch_size=10,那么意味着每次我们都会神经网络输入...同样,在 LSTM ,batch_size 意味着每次网络输入多少个样本,在上图中,当我们设置 batch_size=2 ,我们会将整个序列划分为 6 个 batch,每个 batch 中有两个数字...然而由于 RNN 存在着 “记忆”,也就是循环。事实上一个循环神经网络能够被看做是多个相同神经网络叠加,在这个系统,每一个网络都会传递信息给下一个。...那么实际上我们每个 batch 是一个N×M数组,相当于我们每个 batch 中有N×M个字符。...当我输入一个字符,它会预测下一个,我们再将这个新字符输入模型,就可以一直不断地生成字符,从而形成文本

    79250
    领券