python學(xué)習(xí)之新式類和舊式類講解
object
object 是 Python 為所有對象提供的父類,默認(rèn)提供一些內(nèi)置的屬性、方法;可以使用 dir 方法查看
新式類
以 object 為父類的類,推薦使用在 Python 3.x 中定義類時,如果沒有指定父類,會默認(rèn)使用 object 作為該類的父類所以 Python 3.x 中定義的類都是新式類
舊式類
不以 object 為父類的類,不推薦使用在 Python 2.x 中定義類,如果沒有指定父類,不會使用 object 作為基類
新式類和舊式類的區(qū)別
在多繼承時,會影響到方法搜索順序 MOR
重點(diǎn)
為了保證編寫的代碼能夠同時在 Python2.x 和 Python 3.x 中運(yùn)行建議在定義類時,如果沒有父類,也統(tǒng)一繼承 object
class 類名(object): pass
Python 2.x 中聲明類
舊式類
沒有繼承 object 類,只有兩個屬性、方法舊式類會使用舊的 MRO 算法,多繼承場景下,方法搜索順序會有問題MRO 詳解:Python學(xué)習(xí)之MRO方法搜索順序
新式類
手動繼承 object 類,擁有 object 類的屬性、方法
Python 3.x 中聲明類
默認(rèn)就是新式類
class A: pass a = A() print(dir(a))
# 輸出結(jié)果
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
自動繼承 object 類,擁有 object 類的屬性、方法
到此這篇關(guān)于python學(xué)習(xí)之新式類和舊式類講解的文章就介紹到這了,更多相關(guān)python 新式類和舊式類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實現(xiàn)對列表中的元素進(jìn)行倒序打印
今天小編就為大家分享一篇python實現(xiàn)對列表中的元素進(jìn)行倒序打印,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11Python實現(xiàn)簡單圖像縮放與旋轉(zhuǎn)
大家好,本篇文章主要講的是Python實現(xiàn)簡單圖像縮放與旋轉(zhuǎn),感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2022-01-01