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

python中的3種定義類方法

 更新時間:2021年11月27日 08:35:34   作者:小小程序員ol  
這篇文章主要給大家分享得是 python中的3種定義類方法,分別是普通方法、類方法(@classmethod)以及類方法(@classmethod),想了解方法具體實現的小伙伴可以參考下面文章內容哦,希望對你有所幫助

python中的3種定義類方法:

  • 普通方法
  • 類方法(@classmethod)
  • 類方法(@classmethod)

1、普通方法

創(chuàng)建普通的方法的方式有兩種(class A() & class B()).

class A():

    def __init__(self, name, age):

        self.name = name

        self.age = age

    def get_name(self):

        print('my name is', self.name)

    def get_age(self):

        print(f'i am {self.age} years old')

class B():

    def get_name(self, name):

        print('my name is', name)

    def get_age(self, age):

        print(f'i am {age} years old')

if __name__ == '__main__':

    a = A('tom',19)

    a.get_name()  # my name is tom

    a.get_age() # i am 19 years old

    b = B()

    b.get_name('tom')  # my name is tom

    b.get_age(19) # i am 19 years old

class A() 中, __init__()是一個特殊的方法,相當于對A進行初始化,__init__ 中的self是對象A本身,nameage是它們的形參。

  每次調用方法之前需要對類進行實例化

2、類方法

@classmethod不需要self來表示自身了,而是用了cls來代替。

此時不用再進行實例化了。直接 類名.函數名 進行調用。

#Python學習交流群:725638078

class C():

    @classmethod

    def get_name(cls, name):

        print(cls)  # <class '__main__.C'>

        print('my name is %s' % name)

    @classmethod

    def get_age(cls, age):

        print(f'i am %s years old' % age)

if __name__ == '__main__':

    C.get_name('tom')  # my name is tom

    C.get_age(19) # i am 19 years old

3、靜態(tài)方法

@staticmethod也是通過 類名.函數名 的方式進行調用

靜態(tài)方法不需要表示自身對象的self或者cls作為參數,跟直接使用函數是一樣的。

class D():

    @staticmethod

    def get_name(name):

        print('my name is %s' % name)

    @staticmethod

    def get_age(age):

        print(f'i am %s years old' % age)

 

if __name__ == '__main__':

    D.get_name('tom')  # my name is tom

    D.get_age(19) # i am 19 years old

4、總結

@staticmethod @classmethodPython中稱為 裝飾器,

用來修飾函數,相當于添加一個額外的功能,比如不再像普通函數那樣進行實例化。

通過使用裝飾器可以讓代碼更加整潔,易讀。用了修飾器之后,也可以進行實例化之后再調用,但是就顯得多此一舉了。

到此這篇關于 python中的3種定義類方法的文章就介紹到這了,更多相關 python 定義類方法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • numpy 返回函數的上三角矩陣實例

    numpy 返回函數的上三角矩陣實例

    今天小編就為大家分享一篇numpy 返回函數的上三角矩陣實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Django項目中用JS實現加載子頁面并傳值的方法

    Django項目中用JS實現加載子頁面并傳值的方法

    今天小編就為大家分享一篇Django項目中用JS實現加載子頁面并傳值的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Opencv簡單圖像操作方法實戰(zhàn)

    Opencv簡單圖像操作方法實戰(zhàn)

    OpenCV是一個開源的計算機視覺庫,它提供了一系列豐富的圖像處理和計算機視覺算法,這篇文章主要給大家介紹了關于Opencv簡單圖像操作方法的相關資料,需要的朋友可以參考下
    2024-02-02
  • 基于Python組裝jmx并調用JMeter實現壓力測試

    基于Python組裝jmx并調用JMeter實現壓力測試

    這篇文章主要介紹了基于Python組裝jmx并調用JMeter實現壓力測試,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Python將py文件編譯為exe文件

    Python將py文件編譯為exe文件

    大家好,本篇文章主要講的是Python將py文件編譯為exe文件,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • Django靜態(tài)文件配置request對象方法ORM操作講解

    Django靜態(tài)文件配置request對象方法ORM操作講解

    這篇文章主要為大家介紹了Django靜態(tài)文件配置request對象方法ORM操作,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • python排序的方法實例總結

    python排序的方法實例總結

    在本篇文章里小編給大家整理的是一篇關于python排序的方法實例總結內容,有興趣的朋友們可以學習下。
    2021-04-04
  • Python編程中內置的NotImplemented類型的用法

    Python編程中內置的NotImplemented類型的用法

    這篇文章主要介紹了Python編程中內置的NotImplemented類型的用法,NotImplemented 是Python在內置命名空間中的六個常數之一,下文更多詳細內容需要的小伙伴可以參考一下
    2022-03-03
  • Python 中獲取數組的子數組示例詳解

    Python 中獲取數組的子數組示例詳解

    在 Python 中獲取一個數組的子數組時,可以使用切片操作,使用切片操作來獲取一個數組的一段連續(xù)的子數組,并且還可以使用一些方便的語法來簡化代碼,這篇文章主要介紹了如何在 Python 中獲取數組的子數組,需要的朋友可以參考下
    2023-05-05
  • Python3內置函數chr和ord實現進制轉換

    Python3內置函數chr和ord實現進制轉換

    這篇文章主要介紹了Python3內置函數chr和ord實現進制轉換,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06

最新評論