成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Python中__init__的作用是什么

Python中__init__的作用是什么?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司專業(yè)成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,集網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站制作于一體,網(wǎng)站seo、網(wǎng)站優(yōu)化、網(wǎng)站營(yíng)銷、軟文發(fā)布平臺(tái)等專業(yè)人才根據(jù)搜索規(guī)律編程設(shè)計(jì),讓網(wǎng)站在運(yùn)行后,在搜索中有好的表現(xiàn),專業(yè)設(shè)計(jì)制作為您帶來效益的網(wǎng)站!讓網(wǎng)站建設(shè)為您創(chuàng)造效益。

看到Python中有個(gè)函數(shù)名比較奇特,__init__我知道加下劃線的函數(shù)會(huì)自動(dòng)運(yùn)行,但是不知道它存在的具體意義..

Python中所有的類成員(包括數(shù)據(jù)成員)都是 公共的 ,所有的方法都是 有效的 。

只有一個(gè)例外:如果你使用的數(shù)據(jù)成員名稱以 雙下劃線前綴 比如__privatevar,Python的名稱管理體系會(huì)有效地把它作為私有變量。

這樣就有一個(gè)慣例,如果某個(gè)變量只想在類或?qū)ο笾惺褂?,就?yīng)該以單下劃線前綴。而其他的名稱都將作為公共的,可以被其他類/對(duì)象使用。記住這只是一個(gè)慣例,并不是Python所要求的(與雙下劃線前綴不同)。

同樣,注意__del__方法與 destructor 的概念類似。"

恍然大悟原來__init__在類中被用做構(gòu)造函數(shù),固定寫法,看似很死板,其實(shí)有道理

def __init__(self, name):
    '''Initializes the person's data.'''
    self.name = name
    print '(Initializing %s)' % self.name
    # When this person is created, he/she
    # adds to the population
    Person.population += 1

name變量屬于對(duì)象(它使用self賦值)因此是對(duì)象的變量

self.name的值根據(jù)每個(gè)對(duì)象指定,這表明了它作為對(duì)象的變量的本質(zhì)。

例如我們定義一個(gè)Box類,有width, height, depth三個(gè)屬性,以及計(jì)算體積的方法:

class Box:
    def setDimension(self, width, height, depth):
        self.width = width
        self.height = height
        self.depth = depth
 
    def getVolume(self):
        return self.width * self.height * self.depth
 
b = Box()
b.setDimension(10, 20, 30)
print(b.getVolume())

我們?cè)贐ox類中定義了setDimension方法去設(shè)定該Box的屬性,這樣過于繁瑣,而用__init__()這個(gè)特殊的方法就可以方便地自己對(duì)類的屬性進(jìn)行定義,__init__()方法又被稱為構(gòu)造器(constructor)。

class Box:
    #def setDimension(self, width, height, depth):
    #   self.width = width
    #   self.height = height
    #   self.depth = depth
    def __init__(self, width, height, depth):
        self.width = width
        self.height = height
        self.depth = depth
 
    def getVolume(self):
        return self.width * self.height * self.depth
 
b = Box(10, 20, 30)
print(b.getVolume())

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。

網(wǎng)頁(yè)題目:Python中__init__的作用是什么
本文鏈接:http://jinyejixie.com/article24/ppepje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航用戶體驗(yàn)、定制網(wǎng)站網(wǎng)站建設(shè)、網(wǎng)站改版、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
绍兴县| 沅陵县| 临朐县| 铜陵市| 安龙县| 广南县| 甘泉县| 双峰县| 开封县| 丹阳市| 睢宁县| 广丰县| 星座| 类乌齐县| 岳池县| 宣威市| 阿拉善左旗| 江陵县| 白银市| 遵义市| 沅江市| 延川县| 乡宁县| 边坝县| 泽州县| 衡阳市| 禄丰县| 谢通门县| 克什克腾旗| 罗甸县| 宁波市| 望都县| 惠州市| 马山县| 武汉市| 新密市| 华阴市| 云霄县| 辽阳县| 清原| 黔东|