Python静态方法,类方法的使用区别

发布时间:2022-04-26 09:48:21 人气:146 作者:多测师

  1:类方法用在模拟java定义多个构造函数的情况

  由于python类中只能有一个初始化方法,不能按照不同的情况初始化类,举例如下:

  class book(object):

  def __init__(self,title):

  self.title = title

  @classmethod

  def creat(cls,title):

  book = cls(title=title)

  return book

  book1=book("python")

  book2 = book.creat("python is my work")

  print(book1)

  print(book2)

  print(book1.title)

  print(book2.title)

Python静态方法,类方法的使用区别

  2:类中静态方法方法调用静态方法的情况

  下面的代码,静态方法调用另一个静态方法,如果改用类方法调用静态方法,可以让cls代替类,(让代码看起来精简一些,也防止类名修改了,不用在类定义中修改原来的类名)

  class foo(object):

  x =1

  u =1

  @staticmethod

  def average(*mixes):

  return sum(mixes)/len(mixes)

  @staticmethod

  def static_method():

  return foo.average(foo.x,foo.u)

  @classmethod

  def class_method(cls):

  return cls.average(cls.x,cls.u)

  a = foo()

  print(a.static_method())

  print(a.class_method())

  以上内容为大家介绍了Python静态方法,类方法的使用区别,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线