day13-課堂總結(jié)

一、編程思想:

1.面向過程編程 - 邏輯、算法
遇到問題,考慮直接把邏輯思維轉(zhuǎn)換成代碼,解決問題
2.函數(shù)式編程 - 函數(shù)
遇到問題,就考慮是否有一個這種功能的函數(shù)
3.面向?qū)ο缶幊? - 類和對象
遇到問題,就考慮是否有一個對象能夠幫我解決這個問題

二、類和對象

1.定義
類:就是擁有相同的屬性以及相同的功能的對象的集合(類是抽象的,一個大的概括)
對象:類的實例(對象是具體的)

三、類的聲明

1.語法:
class 類名 (父類列表):
類的內(nèi)容

說明:
class - 聲明類的關(guān)鍵字
類名 - 標識符,不能是關(guān)鍵字(要求采用駝峰式命名,并且首字母大寫 見名知義)
(父類列表) - 繼承語法:可以省略,省略的時候就相當于繼承了object
類的內(nèi)容 - 主要包括類的屬性和方法

2.屬性和方法
類中的屬性:就是在類中聲明的變量;分為類的字段,對象屬性
類中的方法 - 直接在類中聲明的函數(shù),分為對象方法,靜態(tài)方法,類方法
3.創(chuàng)建對象
類名() - 創(chuàng)建對象對應(yīng)的對象

四、對象的方法

1.什么是對象方法
就是在類中聲明的函數(shù),并且自帶一個self的參數(shù)
2.對象方法的調(diào)用 - 通過對象調(diào)用對象的方法
對象.對象方法()
3.self(當前對象)
通過對象調(diào)用對象方法的時候,不需要給對象方法中的第一個self傳遞參數(shù),系統(tǒng)會自動將當前對象傳給self
那個對象調(diào)用的,self就指向誰
注意:當前類的對象能夠做的事情,self都能做

五、init方法和構(gòu)造方法

1.魔法方法
python中以開頭并且以結(jié)尾的方法,就是魔法方法
魔法方法不需要主動調(diào)用,都會自動調(diào)用
2.init方法
a.是對象方法
b.不需要主動調(diào)用,會自動調(diào)用
c.專門用來對對象初始化
3.構(gòu)造方法
在創(chuàng)建類的時候,系統(tǒng)會自動創(chuàng)建這個累的構(gòu)造方法,用來創(chuàng)建對象。
當調(diào)用構(gòu)造方法來創(chuàng)建對象的時候,系統(tǒng)會自動調(diào)用init方法來對對象進行初始化
1.在堆中開辟空間創(chuàng)建對象
2.調(diào)用init方法對對象進行初始化
3.返回一個對象
注意:當init方法中除了需要self外,還需要其他參數(shù),那么這些參數(shù)都是通過構(gòu)造方法來傳的參
只要調(diào)用了構(gòu)造方法,就會產(chǎn)生新的對象

六、對象屬性

1.什么是對象屬性
聲明在init方法中的變量
self.變量名 = 值
2.什么樣的屬性應(yīng)該聲明成對象屬性
當不同的類需要不同的值的時候,就需要把屬性聲明成對象屬性
反之聲明成類的字段

對象屬性的增刪改查

1.查(獲取對象屬性的值)
獲取指定對象指定的屬性的值
a.對象.屬性名 - 屬性不存在的時候報錯
b.getattr(對象,屬性名,默認值) - 當屬性不存在的時候,如果設(shè)置了默認值,程序不崩潰,返回默認值
2.增、改
對象.屬性名 = 值
setattr(對象,屬性名,值)
注意:屬性存在是,對應(yīng)的功能就是修改,反之就是添加
3.刪除
del 對象.屬性名
delattr(對象,屬性名)
注意:對象屬性的增刪改查都是針對指定的那一個對象,不會影響其他對象
4.設(shè)置slots魔法
用來約束當前類有哪些對象屬性

七、類的字段和內(nèi)置類屬性

1.類的字段
a.直接聲明在類的里面函數(shù)的外面的變量就是類的字段
b.類的字段需要通過類來使用
類.字段(不管是在函數(shù)外還是函數(shù)內(nèi)都要這樣用)
2.內(nèi)置類屬性
內(nèi)置屬性就是聲明類的時候,類中已經(jīng)聲明好的屬性(類的字段,對象屬性)
a.類.name獲取類的名字(返回字符串)
b.對象.class獲取當前對象對應(yīng)的類(返回一個類)
c.對象.dict獲取該對象對應(yīng)的所有的對象屬性及其值轉(zhuǎn)換成字典
key是屬性名 value是屬性的值
d.類.dict - 獲取類中的所有的字段以及其對應(yīng)的值
e.類.bases獲取當前類的父類,以元組的形式返回
f.類.module獲取當前類所在的模塊名
g.類.doc獲取類的說明文檔

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容