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

Python OOP類中的幾種函數(shù)或方法總結(jié)

 更新時(shí)間:2019年02月22日 09:48:57   作者:Money多多  
今天小編就為大家分享一篇關(guān)于Python OOP類中的幾種函數(shù)或方法總結(jié),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

概述

實(shí)例方法

  • 使用實(shí)例調(diào)用時(shí),默認(rèn)傳遞實(shí)例本身到實(shí)例方法的第一個(gè)參數(shù)self
  • 使用類調(diào)用時(shí),必須傳遞一個(gè)實(shí)例對(duì)象到實(shí)例方法的第一個(gè)參數(shù)

靜態(tài)方法

  • 使用實(shí)例調(diào)用和類調(diào)用效果相同;

類方法

裝飾器版:

  • 使用實(shí)例調(diào)用和類調(diào)用效果相同;

classmethod(function)版:

  • 在類中,盡量不要使用classmethod(function)實(shí)現(xiàn)類方法,會(huì)將其當(dāng)做實(shí)例方法使用;
  • 使用實(shí)例調(diào)用時(shí),會(huì)默認(rèn)傳遞實(shí)例本身到函數(shù)的第一個(gè)參數(shù),如果函數(shù)的參數(shù)個(gè)數(shù)為0,則報(bào)錯(cuò);
  • 如果必須這樣做,就使用類調(diào)用.

普通函數(shù)

  • 在類中,盡量不要定義普通函數(shù),會(huì)將其當(dāng)做實(shí)例方法使用;
  • 使用實(shí)例調(diào)用時(shí),會(huì)默認(rèn)傳遞實(shí)例本身到函數(shù)的第一個(gè)參數(shù),如果函數(shù)的參數(shù)個(gè)數(shù)為0,則報(bào)錯(cuò);
  • 如果必須這樣做,就使用類調(diào)用.

總而言之,除了裝飾器版的類方法和靜態(tài)方法外,其它方法與函數(shù)均可看做是實(shí)例方法.

代碼與運(yùn)行結(jié)果

class A(object):
  def instant_method(self,*args):
    print('實(shí)例方法',*args)
  @classmethod
  def class_method_01(clz,*args):
    """第一個(gè)參數(shù)為class,調(diào)用時(shí)自動(dòng)傳遞"""
    print('類方法(裝飾器版)',*args)
  def class_method_02(*args):
    print('類方法(普通函數(shù)通過(guò)內(nèi)置函數(shù)classmethond(function)轉(zhuǎn)換版)',*args)
  classmethod(class_method_02)
  @staticmethod
  def static_method(*args):
    print('靜態(tài)方法',*args)
  def normal_function(*args):
    print('普通函數(shù)',*args)
a=A()
# 調(diào)用實(shí)例方法
a.instant_method('通過(guò)實(shí)例調(diào)用')
A.instant_method(a,'通過(guò)類調(diào)用')
# 調(diào)用裝飾器版類方法
a.class_method_01('通過(guò)實(shí)例調(diào)用')
A.class_method_01('通過(guò)類調(diào)用')
# 調(diào)用classmethod(function)版類方法
# 通過(guò)實(shí)例調(diào)用時(shí),會(huì)默認(rèn)傳遞實(shí)例本身到方法的第一個(gè)參數(shù)
a.class_method_02('通過(guò)實(shí)例調(diào)用')
A.class_method_02('通過(guò)類調(diào)用')
# 調(diào)用靜態(tài)方法
a.static_method('通過(guò)實(shí)例調(diào)用')
A.static_method('通過(guò)類調(diào)用')
# 調(diào)用普通函數(shù)
# 通過(guò)實(shí)例調(diào)用時(shí),會(huì)默認(rèn)傳遞實(shí)例本身到方法的第一個(gè)參數(shù)
a.normal_function('通過(guò)實(shí)例調(diào)用')
A.normal_function('通過(guò)類調(diào)用')

輸出

實(shí)例方法 通過(guò)實(shí)例調(diào)用
實(shí)例方法 通過(guò)類調(diào)用
類方法(裝飾器版) 通過(guò)實(shí)例調(diào)用
類方法(裝飾器版) 通過(guò)類調(diào)用
類方法(普通函數(shù)通過(guò)內(nèi)置函數(shù)classmethond(function)轉(zhuǎn)換版) <main.A object at 0x7f9b9b0486a0> 通過(guò)實(shí)例調(diào)用
類方法(普通函數(shù)通過(guò)內(nèi)置函數(shù)classmethond(function)轉(zhuǎn)換版) 通過(guò)類調(diào)用
靜態(tài)方法 通過(guò)實(shí)例調(diào)用
靜態(tài)方法 通過(guò)類調(diào)用
普通函數(shù) <main.A object at 0x7f9b9b0486a0> 通過(guò)實(shí)例調(diào)用
普通函數(shù) 通過(guò)類調(diào)用

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • Flask框架利用Echarts實(shí)現(xiàn)繪制圖形

    Flask框架利用Echarts實(shí)現(xiàn)繪制圖形

    echarts是百度推出的一款開源的基于JavaScript的可視化圖表庫(kù),該開發(fā)庫(kù)目前發(fā)展非常不錯(cuò),且支持各類圖形的繪制可定制程度高。如下演示案例中,將分別展示運(yùn)用該繪圖庫(kù)如何前后端交互繪制(餅狀圖,柱狀圖,折線圖)這三種最基本的圖形,需要的可以參考一下
    2022-10-10
  • Pycharm 操作Django Model的簡(jiǎn)單運(yùn)用方法

    Pycharm 操作Django Model的簡(jiǎn)單運(yùn)用方法

    今天小編就為大家分享一篇Pycharm 操作Django Model的簡(jiǎn)單運(yùn)用方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • 老生常談Python序列化和反序列化

    老生常談Python序列化和反序列化

    下面小編就為大家?guī)?lái)一篇老生常談Python序列化和反序列化。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • python 創(chuàng)建彈出式菜單的實(shí)現(xiàn)代碼

    python 創(chuàng)建彈出式菜單的實(shí)現(xiàn)代碼

    這篇文章主要介紹了python 創(chuàng)建彈出式菜單的實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • python mysql自增字段AUTO_INCREMENT值的修改方式

    python mysql自增字段AUTO_INCREMENT值的修改方式

    這篇文章主要介紹了python mysql自增字段AUTO_INCREMENT值的修改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • TensorFlow安裝并在Pycharm搭建環(huán)境的詳細(xì)圖文教程

    TensorFlow安裝并在Pycharm搭建環(huán)境的詳細(xì)圖文教程

    今天動(dòng)手開始搭建TensorFlow開發(fā)環(huán)境,所以下面這篇文章主要給大家介紹了關(guān)于TensorFlow安裝并在Pycharm搭建環(huán)境的詳細(xì)圖文教程,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • Python打印數(shù)據(jù)類型的全過(guò)程

    Python打印數(shù)據(jù)類型的全過(guò)程

    這篇文章主要介紹了Python打印數(shù)據(jù)類型的全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python3實(shí)現(xiàn)網(wǎng)頁(yè)版raspberry pi(樹莓派)小車控制

    python3實(shí)現(xiàn)網(wǎng)頁(yè)版raspberry pi(樹莓派)小車控制

    這篇文章主要為大家詳細(xì)介紹了python3實(shí)現(xiàn)網(wǎng)頁(yè)版raspberry pi(樹莓派)小車控制,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • python使用if語(yǔ)句實(shí)現(xiàn)一個(gè)猜拳游戲詳解

    python使用if語(yǔ)句實(shí)現(xiàn)一個(gè)猜拳游戲詳解

    這篇文章主要介紹了python使用if語(yǔ)句實(shí)現(xiàn)一個(gè)猜拳游戲詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 解決Pyinstaller打包為可執(zhí)行文件編碼錯(cuò)誤的問(wèn)題

    解決Pyinstaller打包為可執(zhí)行文件編碼錯(cuò)誤的問(wèn)題

    這篇文章主要介紹了解決Pyinstaller打包為可執(zhí)行文件編碼錯(cuò)誤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03

最新評(píng)論