創建兩個類繼承其他類並將第一個類實例傳遞給另一個類init方法有什麼區別?python diff繼承一個類,只是將類實例傳遞給另一個類
像下面, 方法1:
class ht(object):
def __init__(self):
pass
def ch(self):
self.filename="hellgmhjkl"
class tt():
def __init__(self,ob1,ob3):
self.ob1=ob1
self.ob3=ob3
self.b=5
def display(self):
print(ob1.filename)
print(self.ob3.d)
class kk():
def __init__(self):
self.c=3
def hel(self):
self.d=self.c+5
if __name__ == '__main__':
ob1=ht()
ob1.ch()
ob3=kk()
ob3.hel()
ob2=tt(ob1,ob3)
ob2.display()
方法2:
class ht(object):
def __init__(self):
pass
def ch(self):
self.filename="hellgmhjkl"
class tt(ht):
def __init__(self,ob1,ob3):
self.ob1=ob1
self.ob3=ob3
self.b=5
def display(self):
print(ob1.filename)
print(self.ob3.d)
class kk():
def __init__(self):
self.c=3
def hel(self):
self.d=self.c+5
if __name__ == '__main__':
ob1=ht()
ob1.ch()
ob3=kk()
ob3.hel()
ob2=tt(ob1,ob3)
ob2.display()
什麼是方法1和2之間的差異? 我的要求是我有幾個類:config.py,log.py,analyse.py,HTTPrequest.py,request.py,attack.py
以上所有類都需要config.py和log中的類變量值的.py。 而且,analyse.py需要request.py和HTTPRequest中的值,py和attack.y需要request.py中的值。
任何人都可以幫助我如何繼承像多重或多級或usecomposition或只傳遞類對象,以及如何?
當我輸入一個文件類定義的方法得到在導入過程本身調用之前自動執行。如何在不執行的情況下使用類和方法導入文件。如果__name __ ==「__ main__」不能包含我的類:因爲我無法繼承我的類名,並使用封閉的主要方法 – user3264821
_「當我使用類定義導入文件時,它的方法在導入過程本身調用前自動執行。用類和方法導入文件而不執行。「_ - 只有當你有像'foo = MyClass()'這樣的語句時,纔會對整個文件進行評估。否則,代碼將被評估,但在需要時纔會執行。 –
用屏幕截圖來看看我上面的答案,代碼在導入過程中執行了兩次 – user3264821