iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 21
0
Software Development

從0開始學習程式-Python系列 第 22

[Day25]Object&Class到底是什麼?

  • 分享至 

  • xImage
  •  
  • 物件(Object):白話文就是「實物(instance) 」,他的狀態是動態的,可以因為參數或者訊息作出適當的反應或改變,而不同的物件的狀態可以不一樣。
  • 類別(Class):每個物件都是某個類別下的實物,可以想像是「種類」,就是為了大家方便有組織的分類而創造出來的抽象概念!

以下我們舉一些例子:
E.g.1
每一棟現在出現在地面上的房子,都是由建築設計師畫出來的設計藍圖,透過土木專業技師和建築師建設起來!
類別:建築設計藍圖
物件:每棟房子
解釋:每幢房子或每棟大樓,甚或每間房間都有不一樣的設計,包含外觀、走道、坪數等等都不同,但是他們都是屬於建築設計藍圖這一個類別下所創造出來的物件。

E.g.2
幻象2000、波音747、阿帕契直昇機,都是可以用來運載的空中交通工具。
類別:空中交通工具(飛機)
物件:每架飛機或者直升機
解釋:這個例子應該更容易理解了!上述三種物件都屬於空中交通工具,但不管在型態、速度、載重等等都不相同,但他們都具有這些特色!

講了這麼多那python怎麼實踐呢?

class ....

我想這就是最基本的語法吧
今天舉一些個簡單的例子讓大家早一點了解吧

class cir:
    def __init__(self,r):
        self.r=r
    def area(self):
        return 3.14*(self.r)**2
    def perimeter(self):
        return 2*3.14*(self.r)
        
circle=cir(5)
print('Its area is {}.'.format(cycle.area())
print('Its perimeter is {}.'.format(cycle.perimeter())
class people:
	def __init__(self,H,W,a):
		self.height = H
		self.weight = a
        sel.age=age
	def BMI(self):
		return self.weight / ((self.height/100)**2)
    def age(self):
        print('His/Her age is {}.'.format(sel.age)
        return 
        
a =people(180,80)
print("BMI is %s" % a.BMI())
a.age()

好啦~我們今天就到這
Q.設計一個類別可以計算一個長方形的花圃,裡面有三個物件包含周長、面積、圍籬花費。請問你該怎麼寫呢?


上一篇
[Day24]一起來做飲料點餐系統吧!
下一篇
[Day26] init and self
系列文
從0開始學習程式-Python32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言