如何连接逻辑和GUI文件(Python3、Tkinter)
我遇到了一个与Python中的导入相关的问题。我已经实现了一个简单的计算器,没有太多的代码,但我想把我的逻辑从GUI中分离出来(用Tkinter实现) 我的逻辑文件calc_logic.py: 我的GUI文件calculator.py: 我得到一个错误:如何连接逻辑和GUI文件(Python3、Tkinter),python,python-3.x,tkinter,import,Python,Python 3.x,Tkinter,Import,我遇到了一个与Python中的导入相关的问题。我已经实现了一个简单的计算器,没有太多的代码,但我想把我的逻辑从GUI中分离出来(用Tkinter实现) 我的逻辑文件calc_logic.py: 我的GUI文件calculator.py: 我得到一个错误: Traceback (most recent call last): File "/Users/vladsokolovskii/Desktop/python/gui_project/calculator.py", line 4, in &l
Traceback (most recent call last):
File "/Users/vladsokolovskii/Desktop/python/gui_project/calculator.py", line 4, in <module>
from calc_logic import *
File "/Users/vladsokolovskii/Desktop/python/gui_project/calc_logic.py", line 2, in <module>
from calculator import *
File "/Users/vladsokolovskii/Desktop/python/gui_project/calculator.py", line 25, in <module>
clear_button = Button(win, text = 'C', padx = 20, pady = 15, command = button_clear)
NameError: name 'button_clear' is not defined
calculatro.py中对按钮清除()的第一次引用
我试过:
clear_button = Button(win, text = 'C', padx = 20, pady = 15, command = lambda: button_clear())
它没有给我错误,也没有起作用-_-
我试图以不同的方式修改代码,但从未成功
你能给我解释一下问题出在哪里吗,我是Python新手,我在互联网上找不到类似的问题,我确信有一个解决方案,但我只是不知道如何正确地搜索它
谢谢 当在
calc_logic.py
中导入calculator
时,尚未定义按钮清除()。尝试重构代码,不要在calc\u logic.py
中导入calculator
。这是一个循环导入。请参阅以解决此问题当在calc\u logic.py
中导入计算器时,按钮清除()
函数尚未定义。尝试重构代码,不要在calc\u logic.py
中导入calculator
。这是一个循环导入。看看能不能解决这个问题
Traceback (most recent call last):
File "/Users/vladsokolovskii/Desktop/python/gui_project/calculator.py", line 4, in <module>
from calc_logic import *
File "/Users/vladsokolovskii/Desktop/python/gui_project/calc_logic.py", line 2, in <module>
from calculator import *
File "/Users/vladsokolovskii/Desktop/python/gui_project/calculator.py", line 25, in <module>
clear_button = Button(win, text = 'C', padx = 20, pady = 15, command = button_clear)
NameError: name 'button_clear' is not defined
...
def button_clear():
display.delete(0, END)
display.insert(0, '0')
...
...
clear_button = Button(win, text = 'C', padx = 20, pady = 15, command = button_clear)
...
clear_button = Button(win, text = 'C', padx = 20, pady = 15, command = lambda: button_clear())