天天看點

類的特殊方法 init |學習筆記

開發者學堂課程【Python 語言基礎 3:函數、面向對象、異常處理:類的特殊方法 init】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

https://developer.aliyun.com/learning/course/601/detail/8745

類的特殊方法 init

目錄

一、類對象的初始化

二.建立對象的流程

三.類的基本結構

一.類對象的初始化

案例代碼塊:

class Person :

def say_hello(self):

print('大家好,我是%s‘%seIf. name)

p1 = Person()

# #手動向對象添加 name 屬性

p1. name =‘孫悟空‘

p2 = Person( )

p2.name =‘豬八戒’

p3 = Person( )

p3.name=‘沙和尚'

p3.say_hello()

目前來講,對于 Person 類來說 name 是必須的,并且每一 個對象中的 name 屬性基本上都是不同,而我們現在是将 name 屬性在定義為對象以後,手動添加到對象中,這種方式很容易出現錯誤,是以我們希望,在建立對象時,必須設定 name 屬性,如果不設定對象将無法建立,并且屬性的建立應該是自動完成的,而不是在建立對象以後手動完成。

是以我們在類中可以定義一些特殊方法(魔術方法),代碼如下:

class Person:

def__init__(self):

print(‘init方法執行了~~’)

pass

def say_hello(self):

print(‘大家好,我是%s’%self.name)

p1=Person()

#p1.__init__()不要這麼做

注意:

特殊方法都是以__開頭, __結尾的方法

特殊方法不需要我們自己調用,不要嘗試去調用特殊方法

特殊方法将會在特殊的時刻自動調用

學習特殊方法:

1. 特殊方法什麼時候調用

2. 特殊方法有什麼用

1.建立一個變量

2.在記憶體中建立一個新對象

3. 執行類的代碼塊中的代碼(隻在類定義的時候執行一次 )

4.__init__ (self) 方法執行

5.将對象的 i d 指派給變量

init 會在對象建立以後離開執行

init 可以用來向新建立的對象中初始化屬性

class 類名([父類]);

公共的屬性…

# 對象的初始化方法

def __init__(self,…);

def method_1(self,…);

 …

def method_2(self,..):