Python是一門面向對象語言,那麼作為面向對象的特征——類也是有的。值得注意的是Python中一切皆對象,并不像C#中為了性能考慮,int這些在Python中也是對象。(C#中int是結構體)
如何定義一個類:
1 class Person:
2 pass
使用class關鍵字,上面定義了一個Person類。但是現在這個類是空白的。
接下來定義一個構造函數
1 class Person:
2 def __init__(self,name,age):
3 self.name=name
4 self.age=age
函數__init__是Python中類的構造函數的名稱,任何Python的類的構造函數的名稱都必須是這樣。
在__init__構造函數中,第一個參數self指代該執行個體。這一點很好了解,因為構造函數也是一個執行個體函數。在Python中,定義執行個體函數需要在函數的第一個參數中填入self這個參數。
接下來定義一個執行個體函數和靜态函數。
1 class Person:
2 def __init__(self,name,age):
3 self.name=name
4 self.age=age
5
6 def printName(self):
7 print(self.name)
8
9 def staticPrint():
10 print('this class\'s name is Person')
接下來就是建立一個類的執行個體并調用了。
1 instance=Person('Tom',18)
2 instance.printName()
3 Person.staticPrint()
其中第一行調用Person的構造函數并将執行個體指派給instance變量。值得注意的是Python中并沒有new關鍵字。
第二行則調用了printName的執行個體方法。輸出Tom。
第三行則調用了Person類的staticPrint靜态方法,輸出this class's name is Person。