[英]Access the method of another class in python
假設我有這樣的兩個類:
class Class1(ParentClass1):
def __init__(self):
super(Class1, self).__init__()
c2 = Class2()
def foo(self):
pass
class Class2(ParentClass2):
def __init__(self):
super(Class2, self).__init__()
def bar(self):
foo() # from Class1
如何訪問foo()
從Class2
,如果實例Class2
中創建Class1
,而Class1
本身另一類啟動?
換句話說,對話框( Class2
)必須從Class1
更新列表。
更新
最初,我在__name__ == '__main__'
有一個Class0
的實例。 Class0
創建Class1
的實例,然后我可以通過Class2
訪問Class1
的實例,但我需要在某些main()
函數上創建Class0
的實例,這不允許我訪問Class1
方法。
正確的術語有幫助……您不想訪問“Class1 的方法”,而是“Class1 的實例方法”——這意味着您需要將 Class1 的實例傳遞給 Class2 的實例:
class Class1(ParentClass1):
def __init__(self):
super(Class1, self).__init__()
self.c2 = Class2(self)
self.c2.bar()
def foo(self):
print("foo")
class Class2(ParentClass2):
def __init__(self, c1):
super(Class2, self).__init__()
self.c1 = c1
def bar(self):
self.c1.foo()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.