python的類方法和靜態(tài)方法
本文實(shí)例講述了python的類方法和靜態(tài)方法。分享給大家供大家參考。具體分析如下:
python沒有和C++中static關(guān)鍵字,它的靜態(tài)方法是怎樣的呢?還有其它語言中少有的類方法又是神馬?
python中實(shí)現(xiàn)靜態(tài)方法和類方法都是依賴于python的修飾器來實(shí)現(xiàn)的。
def method(self):
print("method")
@staticmethod
def staticMethod():
print("static method")
@classmethod
def classMethod(cls):
print("class method")
大家注意到普通的對(duì)象方法、類方法和靜態(tài)方法的去別了嗎?
對(duì)象方法有self參數(shù),類方法有cls參數(shù),靜態(tài)方法是不需要這些附加參數(shù)的。
在C++中是沒有類方法著個(gè)概念的的
class A(object):
"This ia A Class"
@staticmethod
def Foo1():
print("Call static method foo1()\n")
@classmethod
def Foo2(cls):
print("Call class method foo2()")
print("cls.__name__ is ",cls.__name__)
A.Foo1();
A.Foo2();
結(jié)果是:
Call static method foo1()
Call class method foo2()
cls.__name__ is A
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python編程實(shí)現(xiàn)tail-n查看日志文件的方法
這篇文章主要介紹了Python編程實(shí)現(xiàn)tail-n查看日志文件的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Python機(jī)器學(xué)習(xí)庫scikit-learn安裝與基本使用教程
這篇文章主要介紹了Python機(jī)器學(xué)習(xí)庫scikit-learn安裝與基本使用,較為詳細(xì)的介紹了機(jī)器學(xué)習(xí)庫scikit-learn的功能、原理、基本安裝與簡(jiǎn)單使用方法,需要的朋友可以參考下2018-06-06python Django框架快速入門教程(后臺(tái)管理)
Django 是一個(gè)開放源代碼的 Web 應(yīng)用框架,由 Python 寫成,今天通過本文給大家介紹python Django框架快速入門教程,適用后臺(tái)管理,感興趣的朋友跟隨小編一起看看吧2021-07-07使用python和opencv的mask實(shí)現(xiàn)摳圖疊加
這篇文章主要介紹了使用python和opencv的mask實(shí)現(xiàn)摳圖疊加操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-04-04Python中時(shí)間類型的JSON數(shù)據(jù)轉(zhuǎn)換
在Python中,處理時(shí)間和日期數(shù)據(jù)以及與JSON數(shù)據(jù)的相互轉(zhuǎn)換是常見的任務(wù),本文主要為大家詳細(xì)如何在Python中處理時(shí)間類型的JSON數(shù)據(jù)轉(zhuǎn)換,需要的小伙伴可以參考下2024-02-02