python@staticmethod,@staticmethod是什么函数

  python@staticmethod,@staticmethod是什么函数

  说到staticmethod,有些朋友不知道怎么用,但是如果说的是static method,我相信大家都会记住相关的知识点。毕竟大家对英文名字都不是很敏感,staticmethod也是面向对象中三大调用方法之一,需要我们所有python初学者都掌握和使用。在这里,我们将进一步探讨在python中是否需要使用参数来调用静态方法。

  1.静态方法staticmethod

  定义:使用装饰器@staticmethod。参数可选,不带“self”和“cls”参数,但方法体中不能使用类或实例的任何属性和方法;

  调用:实例对象和类对象都可以被调用。

  2.类中的普通方法实际上可以由类或类的实例对象直接调用,但当实例对象调用时,它是要求方法至少有一个参数,调用时,实例对象本身将被传递给第一个参数。

  班级学生(对象):

  def__init__(self,name):

  self.name=name

  defsayHello(lang):

  打印(语言)

  iflang==en:

  打印(欢迎!)

  else:

  打印(“你好!”)

  学生。说你好

  function student . sayhelloat0x 02 AC 7810

  a=学生(鲍勃)

  a .说你好

  boundmethodstudent . sayhelloof _ _ main _ _ . studentobjectat0x 02 ad 03 f 0

  当调用Student.sayHello(en)#类时,会将 en 传递给lang参数。

  半方

  欢迎光临!

  A.当调用sayhello () #类实例对象时,对象本身会自动传递给lang参数,该参数无法再被接收。

  _ _ main _ _ . studentobjectat0x 02 ad 03 f 0

  你好!

  a . say hello( en )trace back(mostrecentcalllast): file py shell # 7 ,第1行,in modulea . say hello( en )type error : say hello()取1 positional arguments但给定2

  下面是python中调用staticmethod的一些方法。需要注意的是,调用实例对象时,一定不能忽略参数的问题。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: