class - 類別簡介
- class簡介:
Python的class機制中,Python的所有類別成員(含資料成員)全部都是公開的(public)的,且內部所使用的函式都是虛擬(virtual)的。
如同Python的特性,class本身也是一個物件。
定義class :
class className : <statement-star> . . . <statement-end>
在class中可以定義方法,主要是代表本身的行為。還可以定義特性來儲存資料。
class Point: def setLocation(self, x, y) : self.x = x self.y = y def __init__(self, x = 0, y = 0): self.x = x self.y = y def getX(self): return self.x def getY(self): return self.y def length(self): return pow(pow(self.x, 2) + pow(self.y, 2), 0.5) def __str__(self): return "x = " + str(self.x) + ",y = " + str(self.y)
在class之中定義方法的時候至少需要一個參數:self 自己。如果需要別的參數則加在參數的後面。
要定義特性可以在__init__()方法中定義所需的特性,這個方法同時也代表著建構式。
要使用類別方法的時候使用 . 來使用方法。
__init__()方法以及__str__()方法則屬於特別方法之一。
要新增一個實例便是
[classname]([arg])
實際使用例:
>>> a =Point(10,25) >>> a.getX() 10 >>> a.setLocation(a.x * 1.3, a.y * 1.3) >>> print(a) x = 13.0,y = 32.5