最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python綁定方法與非綁定方法詳解

 更新時間:2017年08月18日 08:39:35   作者:劉小偉  
這篇文章主要為大家詳細 介紹了Python綁定方法與非綁定方法的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Python綁定方法與非綁定方法,供大家參考,具體內(nèi)容如下

定義:

綁定方法(綁定給誰,誰來調(diào)用就自動將它本身當作第一個參數(shù)傳入):

    1. 綁定到類的方法:用classmethod裝飾器裝飾的方法。

                為類量身定制

                類.boud_method(),自動將類當作第一個參數(shù)傳入

              (其實對象也可調(diào)用,但仍將類當作第一個參數(shù)傳入)

    2. 綁定到對象的方法:沒有被任何裝飾器裝飾的方法。

               為對象量身定制

               對象.boud_method(),自動將對象當作第一個參數(shù)傳入

             (屬于類的函數(shù),類可以調(diào)用,但是必須按照函數(shù)的規(guī)則來,沒有自動傳值那么一說)

非綁定方法:用staticmethod裝飾器裝飾的方法

         不與類或?qū)ο蠼壎ǎ惡蛯ο蠖伎梢哉{(diào)用,但是沒有自動傳值那么一說。就是一個普通工具而已

    注意:與綁定到對象方法區(qū)分開,在類中直接定義的函數(shù),沒有被任何裝飾器裝飾的,都是綁定到對象的方法,可不是普通函數(shù),對象調(diào)用該方法會自動傳值,而staticmethod裝飾的方法,不管誰來調(diào)用,都沒有自動傳值一說

二、綁定方法

綁定給對象的方法(略)

綁定給類的方法(classmethod)

  classmehtod是給類用的,即綁定到類,類在使用時會將類本身當做參數(shù)傳給類方法的第一個參數(shù)(即便是對象來調(diào)用也會將類當作第一個參數(shù)傳入),python為我們內(nèi)置了函數(shù)classmethod來把類中的函數(shù)定義成類方法

import settings
class MySQL:
 def __init__(self,host,port):
  self.host=host
  self.port=port

 @classmethod
 def from_conf(cls):
  print(cls)
  return cls(settings.HOST,settings.PORT)

print(MySQL.from_conf) #<bound method MySQL.from_conf of <class '__main__.MySQL'>>
conn=MySQL.from_conf()

conn.from_conf() #對象也可以調(diào)用,但是默認傳的第一個參數(shù)仍然是類

三、非綁定方法

在類內(nèi)部用staticmethod裝飾的函數(shù)即非綁定方法,就是普通函數(shù)

statimethod不與類或?qū)ο蠼壎?,誰都可以調(diào)用,沒有自動傳值效果

import hashlib
import time
class MySQL:
 def __init__(self,host,port):
  self.id=self.create_id()
  self.host=host
  self.port=port
 @staticmethod
 def create_id(): #就是一個普通工具
  m=hashlib.md5(str(time.time()).encode('utf-8'))
  return m.hexdigest()


print(MySQL.create_id) #<function MySQL.create_id at 0x0000000001E6B9D8> #查看結(jié)果為普通函數(shù)
conn=MySQL('127.0.0.1',3306)
print(conn.create_id) #<function MySQL.create_id at 0x00000000026FB9D8> #查看結(jié)果為普通函數(shù)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python檢測遠程端口是否打開的方法

    python檢測遠程端口是否打開的方法

    這篇文章主要介紹了python檢測遠程端口是否打開的方法,實例分析了Python基于socket檢測端口的技巧,需要的朋友可以參考下
    2015-03-03
  • Python發(fā)展史及網(wǎng)絡爬蟲

    Python發(fā)展史及網(wǎng)絡爬蟲

    Python 是一個高層次的結(jié)合了解釋性、編譯性、互動性和面向?qū)ο蟮哪_本語言。這篇文章給大家介紹了python發(fā)展史及網(wǎng)絡爬蟲知識,感興趣的朋友跟隨小編一起看看吧
    2019-06-06
  • django自定義非主鍵自增字段類型詳解(auto increment field)

    django自定義非主鍵自增字段類型詳解(auto increment field)

    這篇文章主要介紹了django自定義非主鍵自增字段類型詳解(auto increment field),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 一文教你解決Python不支持中文路徑的問題

    一文教你解決Python不支持中文路徑的問題

    Python是一種廣泛使用的高級編程語言,然而在處理包含中文字符的文件路徑時,Python有時會表現(xiàn)出一些不友好的行為,下面小編就來為大家介紹一下具體的解決方法吧
    2025-03-03
  • 詳解Python的迭代器、生成器以及相關(guān)的itertools包

    詳解Python的迭代器、生成器以及相關(guān)的itertools包

    這篇文章主要介紹了詳解Python的迭代器、生成器以及相關(guān)的itertools包,Iterators、Generators是Python的高級特性,亦是Python學習當中必會的基本知識,需要的朋友可以參考下
    2015-04-04
  • python tkinter制作用戶登錄界面的簡單實現(xiàn)

    python tkinter制作用戶登錄界面的簡單實現(xiàn)

    這篇文章主要介紹了python tkinter制作用戶登錄界面的簡單實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • CentOS安裝pillow報錯的解決方法

    CentOS安裝pillow報錯的解決方法

    本文給大家分享的是作者在centos下為Python安裝pillow的時候報錯的解決方法,希望對大家能夠有所幫助。
    2016-01-01
  • 用python實現(xiàn)學生信息管理系統(tǒng)

    用python實現(xiàn)學生信息管理系統(tǒng)

    這篇文章主要為大家詳細介紹了用python實現(xiàn)學生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Pytorch中的gather使用方法

    Pytorch中的gather使用方法

    這篇文章主要介紹了Pytorch中的gather使用方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 詳解Python相關(guān)文件常見的后綴名

    詳解Python相關(guān)文件常見的后綴名

    常見的 Python 文件后綴有:py、pyc 、pyo、 pyi、pyw、 pyd、 pyx 等。本文給大家介紹Python相關(guān)文件常見的后綴名,感興趣的朋友跟隨小編一起看看吧
    2021-05-05

最新評論

中超| 武汉市| 增城市| 法库县| 自贡市| 乌恰县| 台中县| 乌恰县| 甘泉县| 宜兰县| 凤城市| 石城县| 土默特右旗| 兰西县| 辰溪县| 霍山县| 沙河市| 镇雄县| 调兵山市| 涟水县| 松江区| 乃东县| 如皋市| 广南县| 岳普湖县| 吉隆县| 铁岭县| 古田县| 屏山县| 仁寿县| 那坡县| 鹤庆县| 彭州市| 澄城县| 密云县| 昭苏县| 闻喜县| 舒城县| 北安市| 屯门区| 理塘县|