国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

深入淺析Python的類

2020-02-15 21:58:09
字體:
來源:轉載
供稿:網友

面向對象編程時,都會遇到一個概念,類,python也有這個概念,下面我們通過代碼來深入了解下。

創建和使用類

class Dog():  def __init__(self, name, age):    self.name = name    self.age = age  def sit(self):    print(self.name.title() + " is now sitting.")  def roll_over(self):    print(self.name.title() + " rolled over!") my_dog = Dog('willie', 6)print("My dog's name is " + my_dog.name.title() + ".")print("My dog is " + str(my_dog.age) + " years old.") 運行結果:My dog's name is Willie.My dog is 6 years old.

class關鍵字:來定義一個類。類名通常首字母為大寫。

__init__方法:特殊方法,每當實例類的時候都會運行。其中的形參self必不可少,而且必須位于最前面。

self形參:類的方法與普通的函數只有一個特別的區別——它們必須有一個額外的第一個參數名稱,但是在調用這個方法的時候

用不為這個參數賦值,Python會提供這個值。這個特別的變量指對象本身。

實例的方法是指定類名以及需要傳入的實參。

要訪問實例的屬性或者調用方法,可使用句點表示法。

使用類和實例

class Car():  def __init__(self, make, model, year):    self.make = make    self.model = model    self.year = year    self.odometer_reading = 0 #<- here   def get_descriptive_name(self):    long_name = str(self.year) + ' ' + self.make + ' ' + self.model    return long_name.title()   def read_odometer(self):    print("This car has " + str(self.odometer_reading) + " miles on it.") my_new_car = Car('audi', 'a4', 2016)print(my_new_car.get_descriptive_name())my_new_car.read_odometer() 運行結果:2016 Audi A4

可以看到,我們給Car類的屬性指定了默認值self.odometer_reading = 0。如果要修改它,我們可以通過實例直接訪問它并修改,比如:my_new_car.odometer_reading = 23。或者通過方法修改屬性的值。或者通過方法對屬性的值進行遞增。

class Car():  --snip--  #通過方法修改屬性的值  def update_odometer(self, mileage):    self.odometer_reading = mileage   #通過方法對屬性的值進行遞增  def increment_odometer(self, miles):    self.odometer_reading += miles

繼承

一個類繼承另一個類時,他將自動獲得另一個類的所有屬性和方法;原有的類稱為父類,新類稱為子類。子類繼承了其父類的所有屬性和方法,同時還可以定義自己的屬性和方法。

現在我們有一個Car類如下

class Car():  def __init__(self, make, model, year):    self.make = make    self.model = model    self.year = year    self.odometer_reading = 0 #<- here   def get_descriptive_name(self):    long_name = str(self.year) + ' ' + self.make + ' ' + self.model    return long_name.title()   def read_odometer(self):    print("This car has " + str(self.odometer_reading) + " miles on it.")   def update_odometer(self, mileage):    self.odometer_reading = mileage   def increment_odometer(self, miles):    self.odometer_reading += miles            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 唐河县| 石台县| 芜湖县| 龙胜| 昌宁县| 西宁市| 兴宁市| 巨野县| 龙山县| 灵武市| 乌鲁木齐县| 阳西县| 大竹县| 东明县| 屯门区| 九龙县| 黄冈市| 汪清县| 若尔盖县| 沙田区| 仪征市| 澎湖县| 宁德市| 荥经县| 博湖县| 永吉县| 昌邑市| 汶上县| 鹤山市| 共和县| 大港区| 叙永县| 留坝县| 三原县| 儋州市| 体育| 瓦房店市| 罗山县| 柞水县| 武强县| 门头沟区|