method是什么意思中文 Python中的classmethod和staticmethod有什么具體用途?
Python中的classmethod和staticmethod有什么具體用途?區(qū)別在于以下兩個(gè)方面:1。Classmethod類方法必須將類作為第一個(gè)參數(shù),“can access the class
Python中的classmethod和staticmethod有什么具體用途?
區(qū)別在于以下兩個(gè)方面:
1。Classmethod類方法必須將類作為第一個(gè)參數(shù),“can access the class variable”,可以通過(guò)實(shí)例名或類名訪問(wèn);
2。靜態(tài)方法Static method不強(qiáng)制傳入self或CLS,對(duì)類和實(shí)例一無(wú)所知(相當(dāng)于將class方法變成普通方法,獨(dú)立于類),“無(wú)法訪問(wèn)類”還可以通過(guò)實(shí)例名或類名訪問(wèn)實(shí)例變量。
具體用途如下:
1。Classmethod類方法依賴self或CLS來(lái)傳遞參數(shù),因此它必須寫(xiě)在類中,與類密切相關(guān),并且可以訪問(wèn)類外的類變量;
2。靜態(tài)方法靜態(tài)方法完全獨(dú)立于類,因此它不能訪問(wèn)類方法。
就這么簡(jiǎn)單。是否需要訪問(wèn)類變量取決于是否需要訪問(wèn)類方法。