這篇文章主要介紹了python中選擇staticmethod有哪些優(yōu)勢(shì),具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)建站是專業(yè)的海東網(wǎng)站建設(shè)公司,海東接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行海東網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!在調(diào)用類的時(shí)候,我們有很多方法可以選擇,最后使用staticmethod解決問(wèn)題是因?yàn)樗旧淼囊恍┆?dú)特使用優(yōu)勢(shì)。小編在一些代碼示例的練習(xí)中,發(fā)現(xiàn)使用staticmethod時(shí)非常靈活,就拿實(shí)例化使用而言,其實(shí)對(duì)于staticmethod來(lái)說(shuō)并沒(méi)有嚴(yán)格的限制。python中選擇staticmethod的優(yōu)勢(shì),我們用兩個(gè)代碼示例進(jìn)行演示。
代碼示例1:
#!/usr/bin/python # -*- coding: UTF-8 -*- class C(object): @staticmethod def f(): print('runoob'); C.f(); # 靜態(tài)方法無(wú)需實(shí)例化 cobj = C() cobj.f() # 也可以實(shí)例化后調(diào)用
以上實(shí)例輸出結(jié)果為:
runoob runoob
以上實(shí)例聲明了靜態(tài)方法 f,從而可以實(shí)現(xiàn)實(shí)例化使用 C().f(),當(dāng)然也可以不實(shí)例化調(diào)用該方法 C.f()。
代碼示例2:
class Demo(): def fun1(self): Pass @classmethod def fun2(cls): pass @staticmethod def fun3(var): pass demo = Demo() print(demo) print(demo.fun1) print(demo.fun2) print(demo.fun3)
在class內(nèi)定義的普通方法(fun1),因?yàn)樗且嫦驅(qū)嵗瘜?duì)象的一個(gè)實(shí)例方法。
在class內(nèi)定義的類方法(fun2),它第一個(gè)參數(shù)必須是cls,并與class本身是綁定關(guān)系,它也屬于方法,但不屬于實(shí)例方法,可以被實(shí)例對(duì)象調(diào)用。
在class內(nèi)定義的靜態(tài)方法(fun3),它與任何對(duì)象都沒(méi)有聯(lián)系,等同于是在class外定義的function,它屬于函數(shù)。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python中選擇staticmethod有哪些優(yōu)勢(shì)內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問(wèn)題就找創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!
網(wǎng)站欄目:python中選擇staticmethod有哪些優(yōu)勢(shì)-創(chuàng)新互聯(lián)
路徑分享:http://muchs.cn/article30/doogpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、網(wǎng)站改版、靜態(tài)網(wǎng)站、全網(wǎng)營(yíng)銷推廣、小程序開發(fā)、域名注冊(cè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容