- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是 Python/编程新手,所以请保持温柔!到目前为止,我一直很擅长自己解决问题(或在这里找到答案!),但我已经为此苦苦挣扎了一段时间......使用 Tkinter,我想要一个标签来打印两个输入字段的总和,并在每次输入输入后自动更新。这是我必须要做的:
from Tkinter import *
import ttk
root = Tk()
first_var = IntVar()
second_var = IntVar()
total_var = IntVar()
para = [0, 0]
def totalupdate(*args):
global para
para[0] = first_var.get()
para[1] = second_var.get()
newtotal = sum(para)
total_var.set(newtotal)
first_var.trace('w', totalupdate)
second_var.trace('w', totalupdate)
first = ttk.Entry(root, textvariable=first_var)
second = ttk.Entry(root, textvariable=second_var)
total = ttk.Label(root, textvariable=total_var)
first.grid()
second.grid()
total.grid()
root.mainloop()
所以,这在 Tk 窗口中似乎工作正常,但它抛出了
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tkinter.py", line 1410, in __call__
File "para.py", line 15, in totalupdate
para[1] = second_var.get()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tkinter.py", line 283, in get
ValueError: invalid literal for int() with base 10: ''
每当我在跟踪回调函数中使用 .get() 时,都会在终端窗口中。我尝试了多种方法来解决这个问题,但无济于事。我确定有一个非常简单的解决方案,它似乎不会影响程序,但它会烦扰我!非常感谢任何帮助,以及有关实现我正在尝试做的事情的更好方法的任何评论。非常感谢!
最佳答案
每当您的第一个变量发生变化时,就会触发跟踪,但第二个值仍然为空。空字符串不是整数,抛出异常。
在这种情况下,我会捕获该异常并简单地返回,直到两个变量都持有正确的整数:
def totalupdate(*args):
global para
try:
para[0] = first_var.get()
para[1] = second_var.get()
except ValueError:
# one or both values are not integers
return
newtotal = sum(para)
total_var.set(newtotal)
关于python - Tkinter 跟踪和值错误 : invalid literal for int() with base 10: '' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19908343/
这是我在试验 JS 时的最新发现: (function() { return this; }).call('string literal'); // => [String: 'string liter
在 C 中有没有一种方法可以使用宏从字 rune 字创建字符串文字? 比如我有 'a' 我想创建字符串文字 "a" 澄清问题: #define A 'a' write(fd, "x=" CHAR2ST
令我困扰的是为什么术语“literal”被用来指代NSString和NSArray等类的实例。我只看到了用于引用 NSString 的术语,并且天真地认为它与“字面上”是一个字符串(位于引号之间)有关
我有以下使用 smarty 模板引擎的代码 在 php 文件中: $smarty->assign('SITE_URL', 'http://localhost/mis/'); 在 tpl 文件中:
我正在使用 regex101 tool 制作正则表达式并在解释字段中阅读 [.] - 文字字符 .[\.] - 匹配字符 .字面上地 我在“字面字符”和“字面字符”之间迷失了方向。 这两者有什么区别?
这个问题在这里已经有了答案: Single quotes vs. double quotes in C or C++ (15 个答案) 关闭 4 年前。 我正在阅读一本讨论“字 rune 字”与“字
浮点文字 float x = 3.2f; 的直接赋值和隐式转换为 float 的 double 之间的位表示是否存在差异 float x2 = 3.2;? 即是 #define EQUAL(FLOAT
这个极其简单的 Rust 程序: fn main() { let c = "hello"; println!(c); } 抛出以下编译时错误: error: expected a li
这个极其简单的 Rust 程序: fn main() { let c = "hello"; println!(c); } 抛出以下编译时错误: error: expected a li
是否有单行,类型 mapfilter ... es5+ higherfunction 或 ...?希望解决方案描述如何以及为什么和引用。如果有人知道为什么曾经不起作用。 timeTableKeys:是
我有包含这些声明的代码: class IRealNetDll; extern "C"__declspec(dllexport) IRealNetDll * CreateRealInstance(int
我有一个用于我们的一些服务的 SOAP 服务器 API,其中一位客户说他们不会与不提供至少 WS-I 基本配置文件合规性绑定(bind)的服务集成。 那么,问题是任何版本的 Delphi 都支持 Do
我已经尝试使用这两个循环以及列表理解。即使我正在尝试将数字转换为列表中的整型,两者都无法解析整数。
在代码中隐藏文字值的主要现有方法是什么,以便仅使用 hexdumper 或反编译器不容易跟踪它们? 例如,而不是编码: static final int MY_VALUE = 100; 我们可
我正在尝试使用文字来匹配 Empty Guid,但我不知道这里发生了什么: let [] EmptyGuid = System.Guid () let someFunction () = System
我正在尝试搜索 [Panels] like "*,*" 在工作表中,不幸的是,它没有准确检索该字符串,而是检索如下内容: [Panels] like "*blah,*" [Panels] like "
我看不出自然语言编程和文学编程之间的区别。如果有人解释,我将不胜感激。 最佳答案 Natural language programming是一种以近似于人类书写或说话的语言的形式向计算机表达指令的
我想从字符串数组中初始化一个 pydantic 文字 from typing import Literal from pydantic import BaseModel CLASS_NAME_VALU
我正在尝试在代码后面编写我的js代码。我定义了一个名为“contentPie”的文字,然后将 javascript 代码放入其文本中。但这不起作用。 contentPie.Text = "window
我有一个简单的数据集,可以使用如下行进行解析: R1 (a/30) to R2 (b/30), metric 30 我需要从上面得到的唯一数据如下: R1, a, 30, R2, 192.168.0.
我是一名优秀的程序员,十分优秀!