十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
python静态方法的调用:1、利用“类名.静态方法”调用静态方法;2、利用“实例.静态方法”调用静态方法。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、虚拟空间、营销软件、网站建设、漾濞网站维护、网站推广。
下面代码显示了使用类名调用和实例调用。
课程推荐:三节课带你入门python(青灯教育)
python的类里用@staticmethod的是静态方法,@classmethod的是类方法,如下
class Person(object):
person_list = []
def __init__(self, name, age):
self.name = name
self.age = age
self.person_list.append(self)
@classmethod
def one_year_later(cls):
for p in cls.person_list:
p.age += 1
@staticmethod
def born_one_boby(name):
return Person(name, 0)
def __repr__(self):
return 'Person name:%s, age:%s' % (self.name, self.age)
if __name__ == '__main__':
petter = Person('Petter',23)
merry = Person('Merry',21)
print(petter) # Person name:Petter, age:23
print(merry) # Person name:Merry, age:21
Person.one_year_later()
print(petter) # Person name:Petter, age:24
print(merry) # Person name:Merry, age:22
baby = merry.born_one_boby('Tom')
print(Person.person_list) # [Person name:Petter, age:24, Person name:Merry, age:22, Person name:Tom, age:0]
在类里面定义的函数就是方法,类方法需要@ classmethod 修饰并且有个隐藏参数 cls,实例方法必须有个参数 self, 静态方法必须有 @staticmethod修饰,类和实例都可以访问静态方法,实例可以访问实例方法也可以访问类方法
类可以访问类方法也可以访问实例方法,访问实例方法必须要带参数 self, 可以理解为类其实也是一个实例,类访问实例方法不带参数会报错的.类本身可以访问函数,实例却不行.