python類中函式相互呼叫方法(一看就懂)

2021-10-23 06:25:09 字數 1143 閱讀 6784

方法一:self.方法(引數列表),注意引數列表不需要self

方法二:類名.方法(self,引數列表)

具體**例子如下:

# 利用測試次數和雞蛋個數的關係變化帶來的確定的樓層數來解題

class

dropeggs

:def

supereggdrop

(self, k:

int, n:

int)

->

int:

remaintestcount =

1# 方法一

# while self.getconfirmfloors(remaintestcount, k) < n:

# remaintestcount += 1

# return remaintestcount

# 方法二

while dropeggs.getconfirmfloors(self, remaintestcount, k)

< n:

remaintestcount +=

1return remaintestcount

# 在remaintestcount個測試機會、eggscount個雞蛋可以確定的樓層數量

defgetconfirmfloors

(self, remaintestcount:

int, eggscount:

int)

->

int:

# 如果remaintestcount=1,只能移動一次可以確定樓層0(在一樓扔雞蛋碎了)

# 如果eggscount=1,只能從一樓開始往上面測試扔雞蛋最多確定remaintestcount個樓層

if(remaintestcount ==

1or eggscount ==1)

:return remaintestcount

return self.getconfirmfloors(remaintestcount-

1, eggscount-1)

+ self.getconfirmfloors(remaintestcount-

1, eggscount)

+1

c 中建構函式的相互呼叫

在建構函式中呼叫另乙個建構函式如果一不注意就會有無限遞迴的危險,而且建構函式的引數的不同也決定了呼叫的不同,所以特意總結了一下哪些形式的呼叫時允許的 首先假設構造函式呼叫時引數都是外部的變數,而不是乙個常量。說明 推薦此法 int b 2 class test 在初始化列表呼叫test int a ...

Python 同乙個類中不同函式相互呼叫

本文採取 metaclass type class stu name none age none school 華南理工大學 類變數,被所有學生例項共有 def init self,name,age self.name name self.age age def printname age self...

C 類中非虛函式和虛函式相互呼叫

記住下面的原則 1 當乙個物件呼叫乙個非虛函式時,與物件的宣告型別繫結的,並不是與實際的物件的型別繫結的。2 在虛函式中呼叫非虛函式的時候,呼叫的非虛函式是與虛函式所在的類是一致的 3 在非虛函式中呼叫虛函式的時候,呼叫的虛函式是與對像的實際類一致的。4 非虛函式與虛函式的呼叫與其訪問許可權無關。分...