我使用 Tkinter 在GUI上使用GUI制作了这个计算器,这是我的大学项目,但是有一些要求,一个是每个函数都应该导入主GUI文件而不是放在那里
例如,我为textvariable和1到9的按钮创建了一个空操作符textinput,并为它定义了一个按钮点击处理函数:
def btnClick(numbers):
global operator
operator=operator+str(numbers)
text_Input.set(operator)
我已将此保存在名为“Buttons.py”的其他文件中
现在我在我的gui文件中调用它并按下按钮来执行它
import Buttons
button7=Button(cal,padx=16,bd=4,fg='black',font=('The Citadels',20),
text='7',command=lambda:Buttons.btnClick(7),bg='ghost white')
.grid(row=5,column=0)
但是说错误
名称'operator'未定义
我的代码缺少什么工作?
答案 0 :(得分:0)
当您自己使用import
语句时,导入模块但不导入命名空间。未定义operators
,因为它是模块命名空间的一部分。要解决此问题,您可以使用Buttons.operator
代替operator
,也可以将导入语句更改为from Buttons import *
,这会将Buttons
中的所有变量导入你的命名空间也是如此。