python其實也是一門物件導向語言,也有類 物件 的概念,也有繼承的概念
class classname:
'類的幫助資訊' #類文件字串
class_suite #類體:方法 變數等
def __init__(self):
可以有多個引數,建立類的例項後會自動呼叫該方法
物件=類名(引數)
如上面的t = test()
物件.成員 可以是成員函式也可以是類變數
t.pri()
print(t.count)
__private
:兩個下劃線開頭,宣告該屬性為私有,不能在類的外部被使用或直接訪問。在類內部的方法中使用時
self.__private
可以給物件新增屬性、修改屬性、刪除屬性:
class test():
count = 0
def pri(s):
print(s)
print(s.__class__)
t = test()
t1 = test()
t.new = 10;
print(t.new)
#print(t1.new)
t.count = 1;
print('t.count',t.count)
print('t1.count',t1.count)
del t.new
輸出結果為:
注意注釋掉的那行,不注釋會報錯,因為物件t有屬性new而物件t1並沒有
也可以使用以下函式的方式來訪問屬性:
class test():
'this is doc'
def pri(self):
print('test!')
t=test()
print(t.__doc__)
print(test.__doc__)
print(test.__name__)
類的方法與普通的函式只有乙個特別的區別——它們必須有乙個額外的
第乙個引數名稱
, 按照慣例它的名稱是 self,self代表類的例項,而非類
class test():
count = 0
def pri(s):
print(s)
print(s.__class__)
t = test()
t.pri()
輸出的結果如下:
<__main__.test object at>
雖然有些ide會自動補充self,但這並不是python關鍵字,將其替換成其他的也可以,比如s,一樣可以執行
私有方法同樣是以兩個下劃線開頭:def __privatemethod():
單下劃線 雙下劃線 頭尾下劃線:
class 子類名(基類名): 」
python多重繼承時,優先用層級靠近的類中的方法
issubclass() - 布林函式判斷乙個類是另乙個類的子類或者子孫類,語法:issubclass(sub,sup)
isinstance(obj, class) 布林函式如果obj是class類的例項物件或者是乙個class子類的例項物件則返回true。
python物件導向學習 python物件導向學習
物件導向最重要的概念就是類 class 和例項 instance 必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。物件導向三個概念 1.封裝 即把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法讓可信的類進...
python物件導向總結 Python物件導向總結
python 物件導向 oop 1 物件導向 是乙個更大封裝,把乙個物件封裝多個方法 2 類 是對一些具有相同特徵或行為的事物的乙個統稱,是抽象的,不能直接使用 特徵被稱為屬性 行為被稱為方法 3 物件 是由類建立出來的乙個具體的存在,可以直接使用 先有類再有物件,類只有乙個,而物件可以有多個 類中...
python登入物件導向 python 物件導向
一 屬性和方法 1.a a 例項屬性 通過例項物件來新增的屬性就是例項屬性 a.count 10 例項方法都是在類中直接定義的 以self為第乙個引數的方法都是例項方法 當通過例項物件呼叫時,會自動傳遞當前物件作為self傳入 當通過類物件呼叫時,不會自動傳遞self a.test 等價於 a.te...