我有一個python tkinter應用程序,它以多個文件的形式分開。兩個文件保存類,并且都導入到創建每個類的一個實例的文件中。但是,我需要一個類的方法來調用另一個類的方法。如何在不在子文件中創建實例并導入這些實例的情況下執行此操作?由于每個類都是一個 tkinter Frame 并且需要一個父類,因此我無法在子類各自的文件中實例化子類。parent這是我試圖做的一個簡單的版本:父文件:Master.pyimport Child1import Child2child1 = Child1()child2 = Child2()子 1 文件:Child1.pyclass Child1(): def __init__(self): text1 = 'I am Child 1' def get_called(self): print(text1)子 2 文件:Child2.pyclass Child2(): def __init__(self): text2 = 'I am Child 2' def call_child1(self): # need to call get_called method of Child1 here在最終版本中,將通過tkinter按鈕調用并運行一堆其他代碼以及調用child1的方法。call_child1我正在運行Python 3.8.1一個Windows 10。任何幫助是值得贊賞的。
1 回答

白板的微信
TA貢獻1883條經驗 獲得超3個贊
您可以將實例作為參數傳遞到您的實例中:child1child2
# parent file: Master.py
import Child1
import Child2
child1 = Child1()
child2 = Child2(child1)
# Child 1 file: Child1.py
class Child1():
def __init__(self):
text1 = 'I am Child 1'
def get_called(self):
print(text1)
# Child 2 file: Child2.py
class Child2():
def __init__(self, ch1):
text2 = 'I am Child 2'
self.child1 = ch1
def call_child1(self):
self.child1.get_called()
# need to call get_called method of Child1 here
添加回答
舉報
0/150
提交
取消