python 類之間的引數傳遞
阿新 • • 發佈:2018-12-19
練手記錄以及除錯步驟.
class A(object): def __init__(self,a="A"): print("enter",a) print("leave",a) def mainA(readA,*D): #如果使用例項化B(),呼叫mainA,D收集進來D多餘的引數.(參考第3點說明) print("enter mainA") reaA = "內部新增的" print("leave mainA") return (reaA + " "+str(D)) class B(A): def __init__(self, a =None): print("enter B ") super().__init__() self.read = a print("leave B") def main(read,*two,**three): #這個read 與上一個self.read 無任何關聯,星號收集引數. print("enter main") read = 1 print("leave main") return read ''' =================不例項化的呼叫,可以直接使用 類名.函式名(引數) ====================== >>> B.main(123) enter main leave main 1 >>> fo=B.main(123) enter main leave main >>> print(fo) 1 >>> ''' ''' ==================不例項化繼承後的A,也可以直接使用====================================== >>> print(B.mainA(12)) 我是minA >>> ''' ''' =================================第3點====================================== 細節方面注意: 類例項化後,如: x=B() 使用mainA時需要注意有多餘的引數 >>> x=B() enter B enter A leave A leave B >>> x.mainA() enter mainA leave mainA '內部新增的 ()' #這裡有一個多餘的None 值 >>> '''