面向对象(一)
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
一 小明,男,18歲,上山去砍柴
# 小明,男,10歲,上山去砍柴 # 小明,男,10歲,開車去東北 # 小明,男,10歲,最愛大保健 # 老張,男,90歲,上山去砍柴 # 老張,男,90歲,開車去東北 # 老張,男,90歲,最愛大保健 # 老王,男,70歲,上山去砍柴 # ....class Person:def __init__(self,name,male,age):self.name=name self.male=male self.age=age def drive(self):print('%s,%s,%s歲,開車去東北'%(self.name,self.male,self.age))def climb(self):print('%s,%s,%s歲,上山去砍柴'%(self.name,self.male,self.age))def hobby(self):print('%s,%s,%s歲,最愛大保健'%(self.name,self.male,self.age))ming=Person('ming','male',10) zhang=Person('zhang','male',90) wang=Person('wang','male',70) ming.drive() zhang.drive() wang.drive() ming.hobby() zhang.hobby() wang.hobby() ming.climb() zhang.climb() wang.climb()二:人狗大戰(zhàn)
# class Person: class小寫+類名大寫。括號(hào)可寫可不寫 # def __init__(self,name,age,sex,hp,aggr):調(diào)用雙下init方法,初始化對象 self就是對象 # self.name=name 對象屬性 # self.age=age # self.sex=sex # self.hp=hp # self.aggr=aggr # def attack(self,dog):定義方法 # print('%s攻擊%s'%(self.name,dog.name)) # dog.hp-=self.aggr 誰攻擊另一方掉血# class Dog: class小寫+類名大寫。括號(hào)可寫可不寫 # def __init__(self,name,age,kind,hp,aggr):加載雙下init方法。初始化對象,self就是對象 # self.name=name 屬性 # self.age=age # self.kind=kind # self.hp=hp # self.aggr=aggr # def bite(self,person):定義屬性 # print('%s攻擊%s'%(self.name,person.name)) # person.hp-=self.aggr 誰攻擊另一方掉血 # # alex=Person('alxe',21,'male',100,90) 實(shí)例化 先創(chuàng)建對象 再初始化 # hei=Dog('hei',2,'teddy',900,10) 實(shí)例化 先創(chuàng)建對象 初始化 # alex.attack(hei) # hei.bite(alex) # print(alex.hp) # print(hei.hp)三:用類和對象計(jì)算正方形,長方形,圓形周長和面積
# from math import pi # 圓形 # class Circle: 定義一個(gè)類名 class小寫,類名大寫,()可寫可不寫 # def __init__(self,r): 初始化 調(diào)用雙下init方法 self就是對象 # self.r=r # def area(self): 定義方法 # return pi*(self.r**2) # def por(self):定義方法 # return 2*pi*(self.r) # c1=Circle(5) 實(shí)例化 先創(chuàng)造對象 再初始化 # print(c1.r) # print(c1.area()) 對象.方法名() # print(c1.por())# 正方形# class Sqare: # def __init__(self,r): # self.r=r # def area(self): # return self.r*self.r # # def por(self): # return self.r*4 # s1=Sqare(4) # print(s1.area()) # print(s1.por())# 長方形 # class Chang: # def __init__(self,l,w): # self.l=l # self.w=w # def area(self): # return self.l*self.w # def por(self): # return (self.l+self.w)*2 # x=Chang(5,6) # print(x.area()) # print(x.por())轉(zhuǎn)載于:https://my.oschina.net/u/3648651/blog/1809173
總結(jié)
- 上一篇: Linux实现开机自动运行普通用户脚本
- 下一篇: 区块链记账原理