定義:指類中無需例項參與即可呼叫的方法(不需要self引數),在呼叫過程中,無需將類例項化,直接在類之後使用.號運算子呼叫方法。
用法:靜態方法使用@staticmethod裝飾器來宣告
class classa(object):@staticmethod
def func_a():
print('hello python')
if __name__ == '__main__':
classa.func_a()
# 也可以使用例項呼叫,但是不會將例項作為引數傳入靜態方法
ca = classa()
ca.func_a()
在python 3中,如果乙個類的方法不需要self引數,不再需要宣告為靜態方法,但是這樣的話只能通過類去呼叫這個方法,如果使用例項呼叫會引發異常
class classa(object):def func_a():
print('hello python')
if __name__ == '__main__':
classa.func_a()
# 以下使用例項呼叫會引發異常
ca = classa()
ca.func_a()
func_a() takes 0 positional arguments but 1 was given# 因為func_a沒有宣告為靜態方法,類例項在呼叫func_a時,會隱式地將self引數傳入func_a,而func_a本身不接受任何引數,從而引發異常
python之路 物件導向
不了解什麼是物件導向,就無法更好的掌握python python既支援面向過程的程式設計也支援物件導向的程式設計。面向過程 程式是由過程或僅僅是可重用 的函式構建起來的。物件導向 程式是由資料和功能組合而成的物件構建起來的。物件導向中兩個重要的概念是類和物件。類是對事物的抽象,比如說 人類 物件是具...
Python學習之路 物件導向
物件導向 物件導向的程式設計的核心是物件 相當於你要處於創造者的思維來建立乙個新的東西,如你要實現什麼東西,需要幹什麼才能創造出來 要理解物件為何物。物件導向的程式設計好比作者寫 作者要解決的問題就是使主角從乙個屌絲公升級到大神的故事,作者覺得要讓主角成為大神,會給主角鋪墊從弱到強的大綱,主角很弱時...
python之路 物件導向之多型
什麼是多型 一種事物具有多種形態,如水具有液態水,氣態水.多型性 多型性分為動態多型性與靜態多型性 靜態多型性 任何資料型別都可以使用運算子 進行運算,而運算的結果是不同的 運算子的意義取決於被操作物件 動態多型性 繼承乙個類的多個子類中擁有相同的方法名,那麼這些子類產生的物件就可以不用考慮具體的型...