av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Python基于staticmethod裝飾器標(biāo)示靜態(tài)方法

瀏覽:2日期:2022-07-08 08:49:33

英文文檔:

staticmethod(function)

Return a static method for function.

A static method does not receive an implicit first argument.

The @staticmethod form is a function decorator ? see the description of function definitions in Function definitions for details.

It can be called either on the class (such as C.f()) or on an instance (such as C().f()). The instance is ignored except for its class.

標(biāo)示方法為靜態(tài)方法的裝飾器

說明:

1. 類中普通的方法,實(shí)際上既可以被類直接調(diào)用也可以被類的實(shí)例對(duì)象調(diào)用,但是被實(shí)例對(duì)象調(diào)用的時(shí)候,要求方法至少有一個(gè)參數(shù),而且調(diào)用時(shí)會(huì)將實(shí)例對(duì)象本身傳給第一個(gè)參數(shù)

>>> class Student(object): def __init__(self,name): self.name = name def sayHello(lang): print(lang) if lang == ’en’: print(’Welcome!’) else: print(’你好!’) >>> Student.sayHello<function Student.sayHello at 0x02AC7810>>>> a = Student(’Bob’)>>> a.sayHello<bound method Student.sayHello of <__main__.Student object at 0x02AD03F0>>>>> Student.sayHello(’en’) # 類調(diào)用的時(shí)候,將’en’傳給了lang參數(shù)enWelcome!>>> a.sayHello() # 類實(shí)例對(duì)象調(diào)用的時(shí)候,將對(duì)象本身自動(dòng)傳給了lang參數(shù),不能再接收參數(shù)<__main__.Student object at 0x02AD03F0>你好! >>> a.sayHello(’en’) Traceback (most recent call last): File '<pyshell#7>', line 1, in <module> a.sayHello(’en’) TypeError: sayHello() takes 1 positional argument but 2 were given

2. staticmethod函數(shù)功能就是將一個(gè)方法定義成類的靜態(tài)方法,正確的方法是使用 @staticmethod裝飾器,這樣在實(shí)例對(duì)象調(diào)用的時(shí)候,不會(huì)把實(shí)例對(duì)象本身傳入靜態(tài)方法的第一個(gè)參數(shù)了。

# 使用裝飾器定義靜態(tài)方法>>> class Student(object): def __init__(self,name): self.name = name @staticmethod def sayHello(lang): print(lang) if lang == ’en’: print(’Welcome!’) else: print(’你好!’) >>> Student.sayHello(’en’) #類調(diào)用,’en’傳給了lang參數(shù)enWelcome!>>> b = Student(’Kim’) #類實(shí)例對(duì)象調(diào)用,不再將類實(shí)例對(duì)象傳入靜態(tài)方法>>> b.sayHello()Traceback (most recent call last): File '<pyshell#71>', line 1, in <module> b.sayHello()TypeError: sayHello() missing 1 required positional argument: ’lang’>>> b.sayHello(’zh’) #類實(shí)例對(duì)象調(diào)用,’zh’傳給了lang參數(shù)zh你好!

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 在线免费观看av网站 | 超碰在线成人 | h片在线免费观看 | 精品久久久久久久久久久久久久久久 | 成人羞羞国产免费 | 欧美一级视频在线观看 | 香蕉视频在线观看网站 | 久久久久免费视频 | www.桃色av嫩草.com | 丝袜美腿亚洲综合 | 久久综合一区 | 触手繁殖の地狱3d啪啪 | 亚洲国产精品一区二区三区 | 午夜精品国产精品大乳美女 | av手机在线免费观看 | 国产高清免费 | 成人免费毛片网站 | 国产二区精品 | 九九精品视频在线观看 | 婷婷激情综合 | 成人在线观看视频网站 | 久久嫩草 | 久久久久久久影院 | 青青草视频在线观看 | 在线视频日韩 | 一级片在线 | 欧美日韩一区在线观看 | 蜜臀久久99精品久久久 | 人人干人人爽 | 激情综| 免费毛片在线 | 一道本在线观看 | 免费网站观看www在线观 | 亚洲高清在线 | 国产欧美日韩综合精品 | av在线免费观看网站 | 亚洲区视频 | 在线观看免费av网站 | 亚洲高清在线 | 免费av在线网站 | 久久免费视频网站 |