欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python新式類和經(jīng)典類的區(qū)別實(shí)例分析

 更新時(shí)間:2020年03月23日 10:07:26   作者:bronk  
這篇文章主要介紹了python新式類和經(jīng)典類的區(qū)別,結(jié)合實(shí)例形式分析了python新式類和經(jīng)典類的功能、區(qū)別與使用方法,需要的朋友可以參考下

本文實(shí)例講述了python新式類和經(jīng)典類的區(qū)別。分享給大家供大家參考,具體如下:

新式類就是  class person(object): 這種形式的, 從py2.2 開始出現(xiàn)的

新式類添加了:

__name__ is the attribute's name.
__doc__ is the attribute's docstring.
__get__(object) is a method that retrieves the attribute value from object.
__set__(object, value) sets the attribute on object to value.
__delete__(object, value) deletes the value attribute of object.

新式類的出現(xiàn), 除了添加了大量方法以外, 還改變了經(jīng)典類中一個(gè)多繼承的bug, 因?yàn)槠洳捎昧藦V度優(yōu)先的算法

Python 2.x中默認(rèn)都是經(jīng)典類,只有顯式繼承了object才是新式類
python 3.x中默認(rèn)都是新式類,經(jīng)典類被移除,不必顯式的繼承object

粘貼一段官網(wǎng)上的作者解釋

是說經(jīng)典類中如果都有save方法, C中重寫了save() 方法,  那么尋找順序是 D->B->A, 永遠(yuǎn)找不到C.save()

代碼演示:

#!/usr/bin/env python3
#coding:utf-8
'''
  新式類和經(jīng)典類的區(qū)別, 多繼承代碼演示

'''

class A:
  def __init__(self):
    print 'this is A'
  def save(self):
    print 'save method from A'

class B:
  def __init__(self):
    print 'this is B'

class C:
  def __init__(self):
    print 'this is c'
  def save(self):
    print 'save method from C'

class D(B, C):
  def __init__(self):
    print 'this is D'
d = D()
d.save()

結(jié)果顯示

this is D
save method from C

注意: 在python3 以后的版本中, 默認(rèn)使用了新式類, 是不會(huì)成功的

另外: 經(jīng)典類中所有的特性都是可讀可寫的, 新式類中的特性只讀的, 想要修改需要添加 @Texing.setter

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python面向?qū)ο蟪绦蛟O(shè)計(jì)入門與進(jìn)階教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python3 批量獲取對(duì)應(yīng)端口服務(wù)的實(shí)例

    python3 批量獲取對(duì)應(yīng)端口服務(wù)的實(shí)例

    今天小編就為大家分享一篇python3 批量獲取對(duì)應(yīng)端口服務(wù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 一篇文章帶你了解Python中的裝飾器

    一篇文章帶你了解Python中的裝飾器

    Python中的裝飾器是你進(jìn)入Python大門的一道坎,不管你跨不跨過去它都在那里,下面這篇文章主要給大家介紹了關(guān)于Python中裝飾器的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • jupyter notebook 使用過程中python莫名崩潰的原因及解決方式

    jupyter notebook 使用過程中python莫名崩潰的原因及解決方式

    這篇文章主要介紹了jupyter notebook 使用過程中python莫名崩潰的原因及解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • django如何根據(jù)現(xiàn)有數(shù)據(jù)庫(kù)表生成model詳解

    django如何根據(jù)現(xiàn)有數(shù)據(jù)庫(kù)表生成model詳解

    這篇文章主要給大家介紹了關(guān)于django如何根據(jù)現(xiàn)有數(shù)據(jù)庫(kù)表生成model的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Django具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-08-08
  • VSCode搭建Django開發(fā)環(huán)境的圖文步驟

    VSCode搭建Django開發(fā)環(huán)境的圖文步驟

    本篇介紹在vscode環(huán)境下搭建Django開發(fā)環(huán)境的詳細(xì)步驟,包括Python、Django、VSCode等,以及它們的安裝和配置方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • 5種Python統(tǒng)計(jì)次數(shù)方法技巧

    5種Python統(tǒng)計(jì)次數(shù)方法技巧

    這篇文章主要給大家分享的是5種Python統(tǒng)計(jì)次數(shù)方法技巧,文章主要包括字典 dict 統(tǒng)計(jì)、collections.defaultdict 統(tǒng)計(jì)、List count方法、集合(set)和列表(list)統(tǒng)計(jì)、collections.Counter方法,感興趣的小伙伴一起進(jìn)入下面文章內(nèi)容吧
    2021-11-11
  • linux平臺(tái)使用Python制作BT種子并獲取BT種子信息的方法

    linux平臺(tái)使用Python制作BT種子并獲取BT種子信息的方法

    這篇文章主要介紹了linux平臺(tái)使用Python制作BT種子并獲取BT種子信息的方法,結(jié)合實(shí)例形式詳細(xì)分析了Python BT模塊的安裝及針對(duì)BT種子文件的相關(guān)操作技巧,需要的朋友可以參考下
    2017-01-01
  • Python 實(shí)現(xiàn)數(shù)據(jù)庫(kù)更新腳本的生成方法

    Python 實(shí)現(xiàn)數(shù)據(jù)庫(kù)更新腳本的生成方法

    下面小編就為大家?guī)硪黄狿ython 實(shí)現(xiàn)數(shù)據(jù)庫(kù)更新腳本的生成方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • Python 如何查看程序內(nèi)存占用情況

    Python 如何查看程序內(nèi)存占用情況

    這篇文章主要介紹了Python 如何查看程序內(nèi)存占用情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python數(shù)據(jù)類型最全知識(shí)總結(jié)

    Python數(shù)據(jù)類型最全知識(shí)總結(jié)

    學(xué)習(xí)一門語言,往往都是從Hello World開始. 但是筆者認(rèn)為,在一個(gè)黑框框中輸出一個(gè)“你好,世界”并沒有什么了不起,要看透事物的本質(zhì),熟悉一門語言,就要了解其底層,就是我們常常說的基礎(chǔ),本篇從python中的數(shù)據(jù)類型開始,需要的朋友可以參考下
    2021-05-05

最新評(píng)論