標籤:blank 相對 module reload 包括 att 修飾符 字元 border
在進入物件導向編程之前,希望對python常見內建函數做個整理,參考來自官網;
常見內建函數
| chr(number) |
返回ASCII碼為給定數位字元 |
| ord(char) |
返回給定單字元(長度為1的字串或者Unicode字串)的ASCII值 |
| all(iterable) |
如果所有iterable的元素均為真則返回True, 否則返回False |
| any(iterable) |
如果有任一iterable的元素為真則返回True,否則返回False |
| callable(object) |
檢查對象是否可調用 |
| dir([object]) |
選擇性地列出給定對象的(大多數)特性 |
| help([object]) |
調用內建的協助系統,或者列印給定對象的協助資訊 |
| reload(module) |
重載入一個已經載入的模組並將其返回 |
| repr(object) |
返回表示對象的字串,一般作為eval的參數使用 |
| eval(string[, globals[, locals]]) |
對包含運算式的字串進行計算 |
| input([prompt]) |
等同於eval(raw_input(prompt) |
| raw_input([prompt]) |
將使用者輸入的資料作為字串返回,可選擇使用給定的提示符prompt |
| str(object) |
返回表示給定對象object的格式化好的字串 |
| type(object) |
返回給定對象的類型 |
物件導向編程
物件導向是一種程式設計方法,相對面向過程而言,把函數進行分類和封裝。
|
物件導向概念初識 |
|
概念 |
說明 |
例子 |
|
類 |
現實世界中的一些事物抽象封裝。以關鍵字class開頭,後接類名及冒號。 |
class Person:
name = ‘Lucy’
def SetAge(self,age):
Self.age = age |
|
對象 |
類定義後的一個執行個體,對象包括屬性和方法。對象分為類對象,執行個體對象 |
|
|
類對象 |
類定義完成之後即產生了一個全域的類對象,可以通過類對象來訪問類中的屬性和方法。 |
Person 類對象 |
|
執行個體對象 |
執行個體對象是對類的執行個體化,可以執行個體化多個 |
p = Person() 執行個體對象 |
|
屬性 |
形容對象是什麼或者能幹什麼 |
|
|
類屬性 |
類屬性所有執行個體對象所共有的屬性,在類外,可以通過類對象定義或修改,在類裡面,只能在類方法中進行定義或修改。 |
name = ‘Lucy’ 類屬性
Person.country = ‘china’ 通過類對象定義 |
|
執行個體屬性 |
某個執行個體對象的屬性,當與類屬性衝突時,執行個體屬性屏蔽類屬性。 |
p.country = ‘china’ 通過執行個體對象定義
|
|
私人屬性 |
以雙底線開頭,不能在類的外部被直接存取 |
__name = ‘Lucy’ |
|
函數 |
完成特定功能的代碼塊,便於重用 |
def SetAge(age):
return age |
|
方法 |
方法同函數功能一樣,寫在類中,同對象聯用 |
def SetAge(self,age):
Self.age = age |
|
類方法 |
含@classmethod修飾符且必須有cls參數的方法,可以通過執行個體對象和類對象訪問 |
@classmethod
def SetAge(cls,age):
cls.age = age |
|
執行個體方法 |
含self的方法,只能通過執行個體對象訪問 |
def SetAge(self,age):
Self.age = age |
|
靜態方法 |
含@staticmethod修飾符的方法,只能通過類對象訪問 |
@staticmethod
def SetAge(age):
return age |
常見內建方法
|
類的內建方法 |
|
內建方法名 |
說明 |
|
__init__(self,...) |
初始化對象,在建立新對象時調用 |
|
__del__(self) |
釋放對象,在對象被刪除之前調用 |
|
__new__(cls,*args,**kwd) |
執行個體的產生操作 |
|
__str__(self) |
在使用print語句時被調用 |
|
__call__(self,*args) |
把執行個體對象作為函數調用 |
|
__getattr__(s,name) |
擷取屬性的值 |
|
__setattr__(s,name,value) |
設定屬性的值 |
|
__delattr__(s,name) |
刪除屬性的值 |
基礎知識回顧——物件導向編程