本文目錄一覽:
python類中屬性方法的事件
1普通方法:直接用self調用的方法。
2私有方法:__函數名,只能在類中被調用的方法。
3屬性方法:@property,將方法偽裝成為屬性,讓代碼看起來更合理。
4特殊方法(雙下劃線方法):以__init__為例,是用來封裝實例化對象的屬性,只要是實例化對象就一定會執行__init方法,如果對象子類中沒有則會尋找父類(超類),如果父類(超類)也沒有,則直接繼承object(python 3.x)類,執行類中的__init__方法。
5類方法:通過類名的調用去操作公共模板中的屬性和方法。
6靜態方法:不用傳入類空間、對象的方法, 作用是保證代碼的一致性,規範性,可以完全獨立類外的一個方法,但是為了代碼的一致性統一的放到某個模塊(py文件)中。
python類方法問題
@classmethod
def new_square(cls, side_length):
return cls(side_length, side_length)
@classmethod表示函數new_square是Rectangle類裡面創建一個成員函數
cls表示調用當前的類名
side_length是函數的一個要傳的參數
return cls(side_length, side_length)表示返回調用Rectangle類的構造函數def __init__(self, width, height)初始化後的類
所以square = Rectangle.new_square(5)表示調用Rectangle類的成員函數new_square,初始化Rectangle類並返回
print(square.calculate_area())表示調用Rectangle類的計算面積函數,並打印輸出
因此5傳給side_length變量,又調用__init__函數為self.width和self.height賦值為5,
調用print(square.calculate_area())打印self.width * self.height=5*5=25
關於python的實例方法問題?
題主你好,
python中創建新實例的時候, 如果相應的類中定義了__init__()方法的話, 會自動調用這個方法. 你可能認為名稱”init”和”__init__”差不多, 但計算機其實是個很笨的東西, 它會完全按照設計去執行. 也就是說,在設計的時候就已經定死了, 默認情況下, 創建新實例的時候, 會自動調用類中定義的__init__()方法, 只要你的方法名和__init__有一點不一樣也不行.
下圖是我在官網上找的關於__init__()調用的簡單說明:
高亮部分說的大概意思就是上面講的,如果相應類中定義了__init__()方法,則在創建該類實例的時候會自動調用裡面定義的__init__()方法.
—–
希望可以幫到題主, 歡迎追問.
原創文章,作者:VA40D,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/127853.html