Python學(xué)習(xí)入門筆記(十二)類——基礎(chǔ)

注:所有代碼部分均為連續(xù)的,“結(jié)果”為在jupyter分步運(yùn)行結(jié)果
代碼部分

class human:  #類 定義
    #類的屬性
    name = 'someone' 
    age = 100
    #類的方法
    def my_name(self):
        print('my name is',self.name)
    def my_age(self):
        print('my age is',self.age)
    def eat(self):
        print('eat')
    def think(self,a,b):
        print(a+b)
person1 = human() #創(chuàng)建一個(gè)person1的對(duì)象
person1.name

結(jié)果:
'someone'

person1.name = 'zhangsan' #修改
print(person1.name)

結(jié)果:
zhangsan

person1.eat()

結(jié)果
eat

person1.my_age()

結(jié)果
my age is 100

person1.think(10,23)

結(jié)果
33

class human:  #類 定義
    def __init__(self,name,age):#初始化,創(chuàng)建對(duì)象時(shí)會(huì)執(zhí)行
        self.name = name #由類的外部傳進(jìn)來
        self.age = age        #由類的外部傳進(jìn)來
        
    #類的方法
    def my_name(self):
        print('my name is',self.name)
    def my_age(self):
        print('my age is',self.age)
    def eat(self):
        print('eat')
    def think(self,a,b):
        print(a+b)
person2 = human()#沒有傳入?yún)?shù),所以報(bào)錯(cuò)

結(jié)果

TypeError Traceback (most recent call last)
<ipython-input-10-f36437239922> in <module>()
----> 1 person2 = human()

TypeError: init() missing 2 required positional arguments: 'name' and 'age'

person2 = human('xiaoming',10)#正確創(chuàng)建方法
person2.name

結(jié)果
'xiaoming'

person2.my_age()

結(jié)果
my age is 10

class human:  #類 
    def __init__(self,name='someone',age=10):#創(chuàng)建對(duì)象時(shí)會(huì)執(zhí)行 
        self.name = name
        self.age = age
        
    #類的方法
    def my_name(self):
        print('my name is',self.name)
    def my_age(self):
        print('my age is',self.age)
    def eat(self):
        print('eat')
    def think(self,a,b):
        print(a+b)
person3 = human()#因?yàn)轭惗x時(shí)候默認(rèn)定義了初始化參數(shù)的值,所以正確創(chuàng)建了對(duì)象
person3.my_name()

結(jié)果
my name is someone

person3 = human(name='xiaohong',age=20) #正確創(chuàng)建對(duì)象
person3.my_name()

結(jié)果
my name is xiaohong //因?yàn)閯?chuàng)建對(duì)象時(shí)候賦值了,所以name()改變了

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

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

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