一、類與物件
封裝:資訊隱蔽技術
我們可以使用關鍵字class定義python類,關鍵字後面緊跟類的名稱、分號和類的實現。
class turtle:
color ='green'
weight = 10
legs = 4
shell = true
mouth = '大嘴'
#方法def climb(self):
print('我正在努力向前爬')
def run(self):
print('我正在飛快向前跑')
def bite(self):
print('咬死你,咬死你')
# 2 繼承:子類自動共享父類之間資料和方法的機制
class mylist(list):
pass
lst = mylist([1,5,2,7,8])
lst.sort()
print(lst)
# 3. 多型,不同物件對同一方法響應不同的行動
class animal:
def run(self):
raise attributeerror('子類必須實現這個方法')
class people(animal):
def run(self):
print('人正在走')
class pig(animal):
def run(self):
print('pig is walking')
class dog(animal):
def run(self):
print('dog is running')
def func(animal):
animal.run()
func(pig())
self
# 類的方法與普通函式只有乙個特別的區別,它必須有乙個額外的第乙個引數名稱,
# 按照慣例,名稱為self。在呼叫方法時,我們無需明確提供與引數self相對應的引數
class ball:
def setname(self,name):
self.name = name
def kick(self):
print("我叫%s,該死的,誰踢我……"%self.name)
a = ball()
a.setname('球a')
b = ball()
b.setname("球b")
c = ball()
c.setname('球c')
a.kick()
b.kick()
組合
class turtle:
def __init__(self,x):
self.num = x
class fish:
def __init__(self,x):
self.num = x
class pool:
def __init__(self,x,y):
self.turtle = turtle(x)
self.fish = fish(y)
def print_num(self):
print("水池裡面有烏龜%s只,小魚%s條"%(self.turtle.num,self.fish.num))
p = pool(2,3)
p.print_num()
#定義乙個遊樂園門票的類,計算2個**和乙個小孩平日票價
"""平日票價100元
週末票價為平日的120%
兒童票半價
"""class ticket():
def __init__(self,weekend = false,child=false):
self.exp = 100
if weekend:
self.inc = 1.2
else:
self.inc = 1
if child:
self.discount = 0.5
else:
self.discount = 1
#self.price = 120
def calcprice(self,num):
return self.exp*self.inc*self.discount*num
adult = ticket()
child = ticket(child = true)
print("2個**+1個小孩的平日票價為:%.2f"%(adult.calcprice(2)+child.calcprice(1)))
# 魔方方法總是被雙下劃線包圍,如__init__
# 魔方方法的第乙個引數應為cls方法,或者self例項方法
Python 魔方方法
class person 預設列印物件,顯示類名 位址 重寫該方法,列印該方法的返回值 def str self return 我叫 今年 歲 format self.name,self.age james person james.name 勒布朗.詹姆斯 james.age 33 print j...
task07 類與物件 魔方方法
1 以下類定義中哪些是類屬性,哪些是例項屬性?類屬性 類裡面方法外面定義的變數稱為類屬性。類屬性所屬於類物件並且多個例項物件之間共享同乙個類屬性,說白了就是類屬性所有的通過該類例項化的物件都能共享。例項屬性 例項屬性和具體的某個例項物件有關係,並且乙個例項物件和另外乙個例項物件是不共享屬性的,說白了...
python基礎 07 類與物件 魔方方法
1 概念 類 主要定義物件的結構,然後我們以類為模板建立物件。類不但包含方法定義,而且還包含所有例項共享的資料。物件 通過類定義的資料結構例項。物件包括兩個資料成員 類變數和例項變數 和方法。物件是類的例項 例項化 建立乙個類的例項,類的具體物件。方法 類中定義的函式。繼承 子類自動共享父類之間資料...