新聞中心
1、說(shuō)明

為鹽田等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及鹽田網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、鹽田網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
由于模擬實(shí)物中會(huì)有越來(lái)越多的細(xì)節(jié),導(dǎo)致一種類變得有些復(fù)雜,此時(shí)我們可以從中提取細(xì)節(jié),將其作為一種類型,并將其作為子類型的屬性。
將子類中的電池給單獨(dú)分離出來(lái),形成一個(gè)新的類。
2、實(shí)例
class Car:
---snip---
#創(chuàng)建子類時(shí),父類文件必須包含在該文件中,且圓括號(hào)內(nèi)必須包含父類的名稱
#---snip--- 表示上一個(gè)代碼中父類的基本屬性
class Battery:#先是定義了一個(gè)新類——Battery,他沒(méi)有繼承任何類。
"""一次模擬電動(dòng)汽車電瓶的簡(jiǎn)單嘗試。"""
def __init__(self,battery_size = 75):#其中有一個(gè)形參battery_size,這個(gè)形參是可選的,被默認(rèn)為75.但不是默認(rèn)值,仍然可以進(jìn)行改變的
"""初始化電瓶的屬性"""
self.battery_size = battery_size
def describe_battery_size(self):
"""打印一條描述電瓶容量的消息"""
print(f"This car has a {self.battery_size}-kwh battery")
def get_range(self):
"""打印一條消息,指出電瓶的續(xù)航里程"""
if self.battery_size == 75:
range = 260
elif self.battery_size == 100:
range = 315
print(f"This car can go about {range} miles on a full charge")
#雖然將原來(lái)的實(shí)例電池作為屬性,有點(diǎn)繁雜,但是整個(gè)之后可以方便我們對(duì)電池進(jìn)行更詳細(xì)的描述,不至于在子類中顯得太繁雜
class Electric_Car(Car):
"""描述電動(dòng)汽車類"""
def __init__(self,make,model,year):
"""
初始化父親的屬性
再初始化電動(dòng)汽車特有的屬性
"""
super().__init__(make,model,year)#super()能夠讓我們調(diào)用父類的方法
self.battery_size = Battery()#直接在子類的基本屬性中添加基本屬性了
def describe_battery(self):#添加新的方法
"""打印一條描述電瓶容量的消息"""
print(f"This car has a {self.battery_size.battery_size}-kwh battery.")#當(dāng)battery沒(méi)有變成類的時(shí)候,battery相當(dāng)于一個(gè)一個(gè)簡(jiǎn)單
#的屬性并且已經(jīng)是個(gè)默認(rèn)值了。但是將battery變成類時(shí),battery_size = Battery 然后需要去該類中尋找描述電池的方法,所以格式為,實(shí)例名.屬性.類方法
def fill_gas_tank(self):
"""電瓶車沒(méi)有汽油"""
print(f"This car doesn't need a gas tank")
my_tesla = Electric_Car('tesla','model s',2019)
print(my_tesla.get_descriptive_name())
my_tesla.describe_battery()
my_tesla.fill_gas_tank()
my_tesla.battery_size.describe_battery_size()
my_tesla.battery_size.get_range()以上就是python將實(shí)例用作屬性的方法,希望對(duì)大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
網(wǎng)站名稱:創(chuàng)新互聯(lián)Python教程:python如何將實(shí)例用作屬性
網(wǎng)址分享:http://fisionsoft.com.cn/article/dhsdhps.html


咨詢
建站咨詢
