新聞中心
首先明確的是SELF只有在類的方法中才會有,獨(dú)立的函數(shù)或方法是不必帶有self的。self在定義類的方法時是必須有的,雖然在調(diào)用時不必傳入相應(yīng)的參數(shù)。

創(chuàng)新互聯(lián)公司服務(wù)項目包括涪城網(wǎng)站建設(shè)、涪城網(wǎng)站制作、涪城網(wǎng)頁制作以及涪城網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,涪城網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到涪城省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
self名稱不是必須的,在python中self不是關(guān)鍵詞,你可以定義成a或b或其它名字都可以,但是約定成俗(為了和其他編程語言統(tǒng)一,減少理解難度),不要搞另類,大家會不明白的。下例中將self改為myname一樣沒有錯誤:
class Person:
def _init_(myname,name):
myname.name=name
def sayhello(myname):
print 'My name is:',myname.name
p=Person('Bill')
print pself指的是類實(shí)例對象本身(注意:不是類本身)。
class Person:
def _init_(self,name):
self.name=name
def sayhello(self):
print 'My name is:',self.name
p=Person('Bill')
print p在上述例子中,self指向Person的實(shí)例p。 為什么不是指向類本身呢,如下例子:
class Person:
def _init_(self,name):
self.name=name
def sayhello(self):
print 'My name is:',self.name
p=Person('Bill')
p1 = Person('Apple')
print p1如果self指向類本身,那么當(dāng)有多個實(shí)例對象時,self指向哪一個呢?
總結(jié)
self在定義時需要定義,但是在調(diào)用時會自動傳入。
self的名字并不是規(guī)定死的,但是最好還是按照約定是用self
self總是指調(diào)用時的類的實(shí)例。
分享文章:創(chuàng)新互聯(lián)Python教程:深入理解python之self
文章URL:http://m.fisionsoft.com.cn/article/dghhppg.html


咨詢
建站咨詢
