Python中定義類方法

2021-09-25 18:24:31 字數 1143 閱讀 9023

方法也分例項方法類方法, 與屬性類似

在class中定義的全部是例項方法,例項方法第乙個引數 self 是例項本身。

在class中定義類方法,需要這麼寫:

class person(object):

count = 0

@classmethod

def how_many(cls):

return cls.count

def __init__(self, name):

self.name = name

person.count = person.count + 1

print(person.how_many())

p1 = person('bob')

print(person.how_many())

結果為:

0

1

通過標記乙個@classmethod,該方法將繫結到 person 類上,而非類的例項。類方法的第乙個引數將傳入類本身,通常將引數名命名為cls,上面的cls.count實際上相當於person.count

任務:如果將類屬性 count 改為私有屬性__count,則外部無法讀取__score,但可以通過乙個類方法獲取,請編寫類方法獲得__count值。

class person(object):

__count = 0

@classmethod

def how_many(cls):

return cls.__count

def __init__(self, name):

self.name = name

person.__count = person.__count + 1

print(person.how_many())

p1 = person('bob')

print(person.how_many())

結果為:

0

1

python類的方法中定義函式

class a def run self def p print hello p a a a.run 輸出 hello注意類中方法和普通函式的區別,python類的方法必須要帶self引數,否則會報錯 takes 0 positional arguments but 1 was given,原因 p...

python類定義方法簡述

python 類定義的方法詳解 類定義的方法分為三種 靜態方法 由 staticmethod修飾 類方法 由 classmethod修飾 例項方法 不需要裝飾器 示例 class a object def m1 self,n 例項方法 第乙個引數必須為self print self classmet...

Python中如何定義類?

類 class 和物件 object,也被稱為示例,instance 類是某一批物件的抽象,可以把類理解成某種概念 物件才是乙個具體的東西 定義類的語法 class類名 執行語句 零個到多個類變數 零個到多個方法 例項方法 類體中的執行語句,會在定義類時自動執行 如果類體中沒有任何 就是定義乙個空類...