本文实例讲述了python静态方法。分享给大家供大家参考。
具体实现方法如下:
复制代码 代码如下:staticmethod Found at: __builtin__
staticmethod(function) -> method
Convert a function to be a static method.
A static method does not receive an implicit first argument.
To declare a static method, use this idiom:
class C:
def f(arg1, arg2, ...): ...
f = staticmethod(f)
It can be called either on the class (e.g. C.f()) or on an
instance
(e.g. C().f()). The instance is ignored except for its class.
Static methods in Python are similar to those found in
Java or C++.
For a more advanced concept, see the classmethod builtin.
class Employee:
"""Employee class with static method isCrowded"""
numberOfEmployees = 0 # number of Employees created
maxEmployees = 10 # maximum number of comfortable employees
def isCrowded():
"""Static method returns true if the employees are crowded"""
return Employee.numberOfEmployees > Employee.maxEmployees
# create static method
isCrowded = staticmethod(isCrowded)
def __init__(self, firstName, lastName):
"""Employee constructor, takes first name and last name"""
self.first = firstName
self.last = lastName
Employee.numberOfEmployees += 1
def __del__(self):
"""Employee destructor"""
Employee.numberOfEmployees -= 1
def __str__(self):
"""String representation of Employee"""
return "%s %s" % (self.first, self.last)
# main program
def main():
answers = [ "No", "Yes" ] # responses to isCrowded
employeeList = [] # list of objects of class Employee
# call static method using class
print "Employees are crowded",
print answers[ Employee.isCrowded() ]
print "\nCreating 11 objects of class Employee..."
# create 11 objects of class Employee
for i in range(11):
employeeList.append(Employee("John", "Doe" + str(i)))
# call static method using object
print "Employees are crowded",
print answers[ employeeList[ i ].isCrowded() ]
print "\nRemoving one employee..."
del employeeList[ 0 ]
print "Employees are crowded", answers[ Employee.isCrowded() ]
if __name__ == "__main__":
main()
希望本文所述对大家的Python程序设计有所帮助。
python,静态,方法
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]