pyton中的self具体含义,加self与不加self有什么区别?
類的定義:
python使用class關(guān)鍵字來(lái)定義類,
創(chuàng)建類時(shí):
1.1用變量形式表示的對(duì)象屬性稱為數(shù)據(jù)成員或成員 屬性
1.2用函數(shù)形式表示的對(duì)象行為稱為成員函數(shù)或成員 方法
成員屬性和成員方法統(tǒng)稱為類的成員
self代表類的實(shí)例,而非類(一定要記住這句話去看下面的內(nèi)容)。
class Test:def prt(self):print("hello!") t = Test() t.prt()在Python的解釋器內(nèi)部,當(dāng)我們調(diào)用t.prt()時(shí),實(shí)際上Python解釋成Test.prt(t),也就是說(shuō)把self替換成類的實(shí)例。
有興趣的童鞋可以把上面的t.prt()一行改寫一下,運(yùn)行后的實(shí)際結(jié)果完全相同。
1.屬性(即變量)
(1)如果變量定義在類下面而不是類的方法下面,那這個(gè)變量既是類的屬性也是類實(shí)例的屬性。
(2)如果變量定義在類的方法下面,如果加了self,那這個(gè)變量就是類實(shí)例的屬性,不是類的屬性;如果沒(méi)有加self,這個(gè)變量只是這個(gè)方法的局部變量,既不是類的屬性也不是類實(shí)例的屬性。
2.方法(即函數(shù))
(1)如果在類中定義函數(shù)時(shí)加了self,那這個(gè)函數(shù)是類實(shí)例的方法,而不是類的方法。
(2)如果在類中定義函數(shù)時(shí)候沒(méi)有加self,那這個(gè)函數(shù)就只是類的方法,而不是類實(shí)例的方法。
類中的屬性分為兩種:
一種是實(shí)例屬性
一種是類屬性
類屬性被定義在類方法之外,所用對(duì)象能引用且都引用這一個(gè)屬性值。如果想在深入的了解,請(qǐng)點(diǎn)這里去了解
總結(jié)
以上是生活随笔為你收集整理的pyton中的self具体含义,加self与不加self有什么区别?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python及pip中常用命令,经常总结
- 下一篇: pycharm 中写代码的提示的前符号