面向對象編程(OOP)是最有效的軟件編寫方法之一,我們會使用到類(CLASS)來定義出一大類對象都有的行爲,當我們基於類來創建對象時,每個對象都具備這種通用的行爲。
然後根據需要賦予每個對象獨特的個性。根據類來創建對象被稱爲實例化,你將把自己編寫的類存儲在模塊中,並在自己的程序文件中導入其他程序員編寫的類。
1. 創建類
簡單來說我們定義的類應該包含兩部分:屬性+功能。
我們來定義一個簡單的計算器的類Calculator,
class Calculator:#對於類的定義我們要求首字母大寫
name ='Good calculator'#固有屬性項
price =20
def __init__(self,name,price,H,width=10,weight=5):#初始化類的屬性
self.name=name
self.p=price
self.h=H
self.wi=width
self.we=weight
#定義內部函數,實現功能
def add(self,x,y):#self 表示本類
print(self.name)#在類中使用self調用它的名字
result = x+y
print(result)
def minus(self,x,y):
result = x-y
print(result)
def times(self,x,y):
result = x*y
print(result)
def divide(self,x,y):
result = x/y
print(result)
2.使用類
根據上面創建的"Calculator"類, 定義一個外部實例"c"來調用類:
c = Calculator('CC',20,30)#定義實例來使用該類
#打印出實例中任何你想要的屬性值
#使用格式:class.name.屬性
print(c.name)#默認名稱
print(c.n)#實例中名稱
print(c.price)#默認的價格屬性
print(c.p)#實例中賦予的價格屬性
print(c.h)#實例中高度值
print(c.we)#實例中寬度
--------------------
#結果輸出如下:
Good calculator
CC
20
30
40
5
注意:這裏賦予屬性的默認值是按照實際情況去設定,另外應該注意實例調用的時候默認屬性的命名方式不同會導致複製結果的差異,這點和列表,字典都很類似。