【发布时间】:2020-12-24 10:20:54
【问题描述】:
我想为多个项目的计算和金额总计创建简单的程序。 只有第一行项目计算工作,但我需要创建 5 行和条目小部件的项目, 我已经创建了第二行,但是计算错误来了..
对不起我的英语不好
代码是
from tkinter import *
def mul(event):
a=float(t1.get())
b=float(t2.get())
c=a*b
t3.insert(0,c)
g=float(v1.get())
h=float(v2.get())
i=g*h
v3.insert(0,c)
win=Tk()
win.geometry('850x450')
l1=Label(win,text="SL")
l1.grid(row=1,column=0)
l2=Label(win,text="price")
l2.grid(row=0,column=1)
l3=Label(win,text="Qty/Kgs")
l3.grid(row=0,column=2)
l4=Label(win,text="Amount")
l4.grid(row=0,column=3)
l5=Label(win,text="DR")
l5.grid(row=2,column=0)
t1=Entry(win)
t1.grid(row=1,column=1)
t2=Entry(win)
t2.grid(row=1,column=2)
t3=Entry(win)
t3.grid(row=1,column=3)
v1=Entry(win)
v1.grid(row=2,column=1)
v2=Entry(win)
v2.grid(row=2,column=2)
v3=Entry(win)
v3.grid(row=2,column=3)
t2.bind('<Return>',mul)
v2.bind('<Return>',mul)
win.mainloop()
错误是
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\godde\AppData\Local\Programs\Python\Python38-
32\lib\tkinter\__init__.py", line 1883, in __call__
return self.func(*args)
File "calc11.py", line 3, in mul
a=float(t1.get())
ValueError: could not convert string to float: ''
提前致谢
【问题讨论】:
-
请更新代码的缩进。 Python 对缩进非常敏感,python 程序员也是如此。
-
@quamrana 缩进在这里看起来很简单,所以我更新了它。不确定OP是否缩进虽然
-
既然@CoolCloud 已经整理了缩进,请用这个
calculation error的详细信息更新问题。 -
反正我猜的错误是
v3.insert(0,c)应该是v3.insert(0,i)。 -
@CoolCloud:您可能已经发现了 OP 尚未遇到的其他错误。我只是专注于 OP 实际上告诉我的内容。
标签: python python-3.x tkinter tkinter-entry