Python能夠面向對象編程,與以前學習的Java面向對象編程的思路很像編程
總結以下函數
定義類:學習
定義方式 class classname():對象
def fangfaname()blog
類主體(能夠包含此類原有的參數,和定義的函數)it
實例化對象:面向對象編程
projectname1=classname();class
projectname2=classname();方法
projectname3=classname():im
實例化出來的對象包含 實例化出它 的類 所原有的參數和函數(projectname1
,projectname2,projectname3包含classname所擁有的參數與方法(類中的函數對應實例化出的對象的方法))
舉個栗子:
類的聲明與定義:
class car():
def __init__(self):
self.lunzi=4
def run(self):
pass;
實例化:
BMW=car()
benz=car()
上圖中黃色的線表示類實例化成對象的過程
藍色表示類中的屬性 傳遞給實例化出來的各個對象的屬性
紅色表示類中的函數 變成了實例化出來的對象中的方法
而畫灰色線的兩個屬性(BMW的 顏色:白色 和BENZ屬性 顏色:黑色)
是兩個對象實例化以後 另外添加上去的
添加方法以下
BMW.顏色=白色
benz.顏色=黑色
這樣的屬性只屬於某一個對象,不屬於類
若是想爲car類再添加一個屬性 速度=60的話
能夠1:benz.__class__.speed=60
2: car.speed=60
這種添加是把屬性添加到car類中 該類實例出的對象都含有該屬性