使用 Python 定義一個 SimpleCalculator 類別。
標籤:程式設計
郭耀仁 yaojenkuo@datainpoint.com from DATAINPOINT
在這個專案中,我們打算使用 Python 自訂一個 SimpleCalculator
類別;這個類別將具有四個方法:兩數相加、兩數相減、兩數相乘以及兩數相除。透過這個專案,我們能夠暸解如何將四個方法綁定在一個類別之中。
class
¶我們可以使用 Python 的保留字 class
定義一個類別,與自訂函式相似的地方是同樣可以用一個長字串加入說明文件(docstring)。
class SimpleCalculator:
"""
This class can create an object with four methods: add, subtract, multiply, and divide.
"""
pass
即便程式區塊中只有 pass
,但是 SimpleCalculator
類別已經被定義妥當,被封裝在 __main__
這個模組之中,並且具有 __doc__
這個內建屬性,儲存了說明文件。
simple_calculator = SimpleCalculator()
print(type(simple_calculator))
print(simple_calculator.__doc__)
<class '__main__.SimpleCalculator'> This class can create an object with four methods: add, subtract, multiply, and divide.
def
定義第一個方法 add()
¶在程式區塊中使用保留字 def
定義一個方法 add()
來進行兩數相加的運算,在這裡要先想像一下未來在使用這個物件時候,會是什麼樣的一個光景:
simple_calculator = SimpleCalculator()
simple_calculator.add('55', '66')
我們會使用 物件名.方法名()
這樣的語法來呼叫 add()
方法,因此在定義的時候需要加入 self
作為物件名的代稱(畢竟我們不會知道未來依照類別所建立的物件名為何。)
class SimpleCalculator:
"""
This class can create an object with four methods: add, subtract, multiply, and divide.
"""
def add(self, a, b):
return a + b
simple_calculator = SimpleCalculator()
simple_calculator.add('55', '66')
'5566'
def
定義剩餘的三個方法¶接著依樣畫葫蘆將剩餘的三個方法 subtract()
、multiply()
與 divide()
完成。
class SimpleCalculator:
"""
This class can create an object with four methods: add, subtract, multiply, and divide.
"""
def add(self, a, b):
return a + b
def subtract(self, a, b):
return a - b
def multiply(self, a, b):
return a * b
def divide(self, a, b):
return a / b
simple_calculator = SimpleCalculator()
simple_calculator.add('55', '66')
'5566'
simple_calculator.subtract(55, 66)
-11
simple_calculator.multiply(55, 66)
3630
simple_calculator.divide(55, 66)
0.8333333333333334