日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python中選擇staticmethod的好處

在調(diào)用類的時候,我們有很多方法可以選擇,最后使用staticmethod解決問題是因為它本身的一些獨特使用優(yōu)勢。小編在一些代碼示例的練習中,發(fā)現(xiàn)使用staticmethod時非常靈活,就拿實例化使用而言,其實對于staticmethod來說并沒有嚴格的限制。下面就python中選擇staticmethod的好處,我們用兩個代碼示例進行演示。

代碼示例1:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
class C(object):
    @staticmethod
    def f():
        print('runoob');
 
C.f();          # 靜態(tài)方法無需實例化
cobj = C()
cobj.f()        # 也可以實例化后調(diào)用

以上實例輸出結(jié)果為:

runoob
runoob

以上實例聲明了靜態(tài)方法 f,從而可以實現(xiàn)實例化使用 C().f(),當然也可以不實例化調(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),因為它是要面向?qū)嵗瘜ο蟮囊粋€實例方法。

  • 在class內(nèi)定義的類方法(fun2),它第一個參數(shù)必須是cls,并與class本身是綁定關系,它也屬于方法,但不屬于實例方法,可以被實例對象調(diào)用。

  • 在class內(nèi)定義的靜態(tài)方法(fun3),它與任何對象都沒有聯(lián)系,等同于是在class外定義的function,它屬于函數(shù)。

以上就是我們在python中選擇staticmethod的兩個好處,相信小伙伴們已經(jīng)在代碼的演示中體會到了,學會后可以在課后勤加練習,然后熟能生巧。


文章名稱:創(chuàng)新互聯(lián)Python教程:python中選擇staticmethod的好處
文章地址:http://m.5511xx.com/article/cocpcsd.html