python中的_init_的使用
1.? __init__方法
想一想:有沒(méi)有辦法能夠在創(chuàng)建對(duì)象的時(shí)候,就順便把車(chē)這個(gè)對(duì)象的屬性給設(shè)置呢?
答:__init__()方法
使用方式:
| def 類(lèi)名(object): ??? #初始化函數(shù),用來(lái)完成一些默認(rèn)的設(shè)定 ??? def __init__(): ??????? pass |
?
__init__()方法的調(diào)用:
| # 定義汽車(chē)類(lèi) class Car(object): ? ??? def __init__(self): ??????? self.wheelNum = 4 ??????? self.color = '藍(lán)色' ? ??? def move(self): ??????? print('車(chē)在跑,目標(biāo):夏威夷') ? # 創(chuàng)建對(duì)象 BMW = Car() ? print('車(chē)的顏色為:%s'%BMW.color) print('車(chē)輪胎數(shù)量為:%d'%BMW.wheelNum) |
?
總結(jié)1:當(dāng)創(chuàng)建Car對(duì)象后,在沒(méi)有調(diào)用__init__()方法的前提下,BMW就默認(rèn)擁有了2個(gè)屬性wheelNum和color,原因是__init__()方法是在創(chuàng)建對(duì)象后,就立刻被默認(rèn)調(diào)用了。
?
想一想:既然在創(chuàng)建完對(duì)象后__init__()方法已經(jīng)被默認(rèn)的執(zhí)行了,那么能否讓對(duì)象在調(diào)用__init__()方法的時(shí)候傳遞一些參數(shù)呢?如果可以,那怎樣傳遞呢?
| # 定義汽車(chē)類(lèi) class Car(object): ? ??? def __init__(self, newWheelNum, newColor): ??????? self.wheelNum = newWheelNum ??????? self.color = newColor ? ??? def move(self): ??????? print('車(chē)在跑,目標(biāo):夏威夷') ? # 創(chuàng)建對(duì)象 BMW = Car(4, 'green') ? print('車(chē)的顏色為:%s'%BMW.color) print('車(chē)輪子數(shù)量為:%d'%BMW.wheelNum) |
- __init__()方法,在創(chuàng)建一個(gè)對(duì)象時(shí)默認(rèn)被調(diào)用,不需要手動(dòng)調(diào)用;
- __init__(self)中,默認(rèn)有1個(gè)參數(shù)名字為self,如果在創(chuàng)建對(duì)象時(shí)傳遞了2個(gè)實(shí)參,那么__init__(self)中出了self作為第一個(gè)形參外還需要2個(gè)形參,例如__init__(self,x,y);
- __init__(self)中的self參數(shù),不需要開(kāi)發(fā)者傳遞,python解釋器會(huì)自動(dòng)把當(dāng)前的對(duì)象引用傳遞進(jìn)去。
總結(jié)
以上是生活随笔為你收集整理的python中的_init_的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 自动摘要
- 下一篇: 朵唯机器人怎么连网_平遥古城推出机器人导