iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 14
1
自我挑戰組

從python入門到物聯網系列 第 14

Day14 - Python Class

  • 分享至 

  • xImage
  •  

class 類別

物件導向當中的類別是抽象描述那些有共同性質的物件,大家可以一起使用,不需重複輸寫,方便且容易修改。內容描述了該類別物件共同的性質,及實現共同行為的方法。

例如對學生資料大家都是相同的:

類別名稱: Student
資料:班級、姓名、學號、手機
分數:國文、英文、數學、自然

  • 語法:
    使用class來完成類別的結構
    定義類別的語法 => class 類別名稱:
    宣告物件的方法 => 物件名稱 = 類別建構子名稱
class 類別名稱:
    #類別建構式
    def __init__(self, 其他參數...):
    .
    .
    def 自訂方法(self, 其他參數...):
    .
    .
  • 建構子:
    建構子語法如下:
    def __init__(self, 其他參數):
    就算是在建構子裡面self也是必須傳入的參數喔!這個方法的開頭和結尾都有兩個底線。

範例:
Student開啟一個類別,代表所有學生可以取用這個類別的設定,避免重複的函式。

class Student():
 def __init__(self, name):
  self.name = name

a = Student("Tom")  #建立一個名叫Tom的Student實體(物件)
print(a.name)

範例中加了一個name屬性,在創class時,都必須要給這個屬性一個參數
才能成功創造實體。

  • 取用自己的屬性
    使用類別自己的變數、函數都須要加上self.變數名稱才能使用
class Student():
	def __init__(self, name, num):
		self.name = name
		self.num = num
	def avg(self, chinese, english, math):
		avg = chinese + english + math
		avg /= 3
		return avg

s = Student("Tom",22)  #變數s 呼叫Student() class
print("學生姓名:" + s.name)
print("學生座號:" + str(s.num))

avg = s.avg(90, 80, 70) #直接使用s.avg 呼叫 Student()裡面的avg function
print("分數平均:" + str(avg))

結果:

學生姓名:Tom
學生座號:22
分數平均:80.0

上一篇
Day13 - Python函數
下一篇
Day15 - Python 套件
系列文
從python入門到物聯網30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

我要留言

立即登入留言