Python TypeError:calculations()缺少1个必需的位置参数:';条目';
我是python新手,我已经编写了这段代码,但是我遇到了一个错误,我不知道如何解决,有人能帮我吗Python TypeError:calculations()缺少1个必需的位置参数:';条目';,python,tkinter,pycharm,syntax-error,Python,Tkinter,Pycharm,Syntax Error,我是python新手,我已经编写了这段代码,但是我遇到了一个错误,我不知道如何解决,有人能帮我吗 from tkinter import * def calculations(entries): shaftdia = float(entries['Shaft Diameter'].get()) outdia = 2 * shaftdia thickfork = 0.75*shaftdia thicksingleye = 1.75*shaftdia diapin = shaft
from tkinter import *
def calculations(entries):
shaftdia = float(entries['Shaft Diameter'].get())
outdia = 2 * shaftdia
thickfork = 0.75*shaftdia
thicksingleye = 1.75*shaftdia
diapin = shaftdia
diapincollar = 1.5*shaftdia
print("Outer diameter of eye: %f" % float(outdia))
print("Thickness of fork: %f" % float(thickfork))
print("Thickness of single eye: %f" % float(thicksingleye))
print("Diameter of pin: %f" % float(diapin))
print("Diameter of knuckle pin and collar: %f" % float(diapincollar))
master = Tk()
Label(master, text="Shaft Diameter").grid(row=0)
Label(master, text="Outer diameter of eye").grid(row=1)
Label(master, text="Thickness of fork").grid(row=2)
Label(master, text="Thickness of single eye").grid(row=3)
Label(master, text="Diameter of Pin").grid(row=4)
Label(master, text="Diameter of knuckle pin head and collar").grid(row=5)
e1 = Entry(master)
e2 = Entry(master)
e3 = Entry(master)
e4 = Entry(master)
e5 = Entry(master)
e6 = Entry(master)
e1.grid(row=0, column=50)
e2.grid(row=1, column=50)
e3.grid(row=2, column=50)
e4.grid(row=3, column=50)
e5.grid(row=4, column=50)
e6.grid(row=5, column=50)
Button(master, text='ACCEPT', command=calculations).grid(row=10, column=1,
sticky=W, pady=4)
master.mainloop( )
它给了我这个点击按钮的错误,我无法解决这个错误
Exception in Tkinter callback
Traceback (most recent call last):
File"C:\Users\kunal\AppData\Local\Programs\Python\Python37\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
TypeError: calculations() missing 1 required positional argument: 'entries'
如果有任何其他错误,请告诉我,因为PYTHON中的NOOB如果读取异常,您可以轻松解决它。 您可以使用一个输入参数定义
计算
函数,但当您调用它时,不会向它传递任何参数。请尝试此代码,而不是command=calculations
:
command = lambda: calculations(YUOR_INPUT_PARAMETER)
有关详细信息,这里的错误是函数
命令
需要条目
作为参数,您在按钮
单击时没有给出该参数
由于已将文本框条目分配给e1、e2、e3、…、e6
,因此根本不需要将条目
传递给命令
功能
相反,像这样修改代码,它就可以工作了:
from tkinter import *
def calculations():
shaftdia = float(e1.get())
outdia = 2 * shaftdia
thickfork = 0.75*shaftdia
thicksingleye = 1.75*shaftdia
diapin = shaftdia
diapincollar = 1.5*shaftdia
print("Outer diameter of eye: %f" % float(outdia))
e2_var.set(outdia)
print("Thickness of fork: %f" % float(thickfork))
e3_var.set(thickfork)
print("Thickness of single eye: %f" % float(thicksingleye))
e4_var.set(thicksingleye)
print("Diameter of pin: %f" % float(diapin))
e5_var.set(diapin)
print("Diameter of knuckle pin and collar: %f" % float(diapincollar))
e6_var.set(diapincollar)
master = Tk()
Label(master, text="Shaft Diameter").grid(row=0)
Label(master, text="Outer diameter of eye").grid(row=1)
Label(master, text="Thickness of fork").grid(row=2)
Label(master, text="Thickness of single eye").grid(row=3)
Label(master, text="Diameter of Pin").grid(row=4)
Label(master, text="Diameter of knuckle pin head and collar").grid(row=5)
e1_var = StringVar()
e2_var = StringVar()
e3_var = StringVar()
e4_var = StringVar()
e5_var = StringVar()
e6_var = StringVar()
e1 = Entry(master,textvariable=e1_var)
e2 = Entry(master,textvariable=e2_var)
e3 = Entry(master,textvariable=e3_var)
e4 = Entry(master,textvariable=e4_var)
e5 = Entry(master,textvariable=e5_var)
e6 = Entry(master,textvariable=e6_var)
e1.grid(row=0, column=50)
e2.grid(row=1, column=50)
e3.grid(row=2, column=50)
e4.grid(row=3, column=50)
e5.grid(row=4, column=50)
e6.grid(row=5, column=50)
Button(master, text='ACCEPT', command=calculations).grid(row=10, column=1,
sticky=W, pady=4)
master.mainloop( )
输出:(轴径为20)
可能的副本,谢谢回复!!这对我有用。你能告诉我如何在文本框中打印结果吗?修改代码以显示在用户界面中。如果这个答案对你有用,请投票给我。快乐学习!!无法向上投票获得此“记录声誉低于15的人所投的票,但不要更改公开显示的帖子分数。”抱歉,这非常有用。您能告诉我如何在GUI中所需的位置添加图像吗。我已经使用了Pil、pillow和其他命令,并且成功地导入了图像,但是它干扰了GUI的其他元素。我希望图像在中心,所有的文本框和标签都应该像前面一样对齐。
Outer diameter of eye: 40.000000
Thickness of fork: 15.000000
Thickness of single eye: 35.000000
Diameter of pin: 20.000000
Diameter of knuckle pin and collar: 30.000000