類與魔方方法

2021-10-08 21:15:15 字數 2473 閱讀 3466

一、類與物件

封裝:資訊隱蔽技術

我們可以使用關鍵字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 概念 類 主要定義物件的結構,然後我們以類為模板建立物件。類不但包含方法定義,而且還包含所有例項共享的資料。物件 通過類定義的資料結構例項。物件包括兩個資料成員 類變數和例項變數 和方法。物件是類的例項 例項化 建立乙個類的例項,類的具體物件。方法 類中定義的函式。繼承 子類自動共享父類之間資料...