【Python】使用類和實例
阿新 • • 發佈:2017-11-21
mil 三種 mod 特定 scribe car pad 指定 ()
Car類
class Car(): ‘‘‘模擬汽車‘‘‘ def __init__(self,name,model,year): ‘‘‘初始化汽車的屬性‘‘‘ self.name = name self.model = model self.year = year def get_describe_car(self): ‘‘‘返回描述性信息‘‘‘ long_name = str(self.year)+‘ ‘+self.name + ‘ ‘+self.modelreturn(long_name) #創建實例 My_new_car = Car(‘Audi‘,‘A4‘,‘2016‘) print(My_new_car.get_describe_car())
上圖是新建的一個Car類,並且我們創建了實例,並將其存儲到My_new_car中
給屬性指定默認值
如果在方法__init__()中指定了默認值,那麽就無需包含為它提供初始值的形參
class Car(): ‘‘‘模擬汽車‘‘‘ def __init__(self,name,model,year): ‘‘‘初始化汽車的屬性‘‘‘ self.name= name self.model = model self.year = year self.miters = 0 def get_describe_car(self): ‘‘‘返回描述性信息‘‘‘ long_name = str(self.year)+‘ ‘+self.name + ‘ ‘+self.model return(long_name) def print_miters(self):print("This car has " + str(self.miters) +" miles on it") #創建實例 My_new_car = Car(‘Audi‘,‘A4‘,‘2016‘) print(My_new_car.get_describe_car()) My_new_car.print_miters()
上述代碼中定義了一個初始值,在形參中我們就沒有為其傳入值,但是在方法print_miters中我們又使用了該屬性
修改屬性的值
三種方法修改屬性的值:
①直接通過實例進行修改
②通過方法進行設定
③通過方法進行遞增(增加特定的值)
1.通過實例進行修改
class Car(): ‘‘‘模擬汽車‘‘‘ def __init__(self,name,model,year): ‘‘‘初始化汽車的屬性‘‘‘ self.name = name self.model = model self.year = year self.miters = 0 def get_describe_car(self): ‘‘‘返回描述性信息‘‘‘ long_name = str(self.year)+‘ ‘+self.name + ‘ ‘+self.model return(long_name) def print_miters(self): print("This car has " + str(self.miters) +" miles on it") #創建實例 My_new_car = Car(‘Audi‘,‘A4‘,‘2016‘) print(My_new_car.get_describe_car()) My_new_car.miters = 100 My_new_car.print_miters()
2.通過方法進行設定
無需直接訪問屬性,可將值傳遞給一個方法,由他在內部進行更新
class Car(): ‘‘‘模擬汽車‘‘‘ def __init__(self,name,model,year): ‘‘‘初始化汽車的屬性‘‘‘ self.name = name self.model = model self.year = year self.miters = 0 def get_describe_car(self): ‘‘‘返回描述性信息‘‘‘ long_name = str(self.year)+‘ ‘+self.name + ‘ ‘+self.model return(long_name) def update_miters(self,miters): self.miters = miters def print_miters(self): print("This car has " + str(self.miters) +" miles on it") #創建實例 My_new_car = Car(‘Audi‘,‘A4‘,‘2016‘) print(My_new_car.get_describe_car()) My_new_car.update_miters(200) My_new_car.print_miters()
3.通過方法對屬性值進行遞增特定的量,而不是將其設置為全新的值
class Car(): ‘‘‘模擬汽車‘‘‘ def __init__(self, name, model, year): ‘‘‘初始化汽車的屬性‘‘‘ self.name = name self.model = model self.year = year self.miters = 0 def get_describe_car(self): ‘‘‘返回描述性信息‘‘‘ long_name = str(self.year) + ‘ ‘ + self.name + ‘ ‘ + self.model return (long_name) def update_miters(self,miters): self.miters = miters def increment_miters(self,add_miters): ‘‘‘將裏程設置為指定的數‘‘‘ self.miters += add_miters def print_miters(self): print("This car has " + str(self.miters) + " miles on it") # 創建實例 My_user_car = Car(‘Audi‘, ‘A4‘, ‘2016‘) print(My_user_car.get_describe_car()) My_user_car.update_miters(200) My_user_car.print_miters() My_user_car.increment_miters(100) My_user_car.print_miters()新增的方法increment_miters()接受一個數字後,並將其加入到update_miters()已經修改過的裏程數,我們調用方法update_miters()傳入200,然後調用increment_miters()又在200基礎上新增100,接著打出來。
【Python】使用類和實例