如何解决python中的实例方法是否需要一个自变量
我正在构建一个简单的平台游戏,并且在我的collided_left
类的Coords
类中使用了Sprite
方法。我在Sprite
类中有一个属性,该属性在Coords
类中创建了一个对象,但是collided_left
方法没有self参数,因此当我尝试在{{ 1}}类,出现Sprite
错误。
我可以在不添加self属性的情况下调用该方法吗?
解决方法
Python中的实例方法是否需要一个自变量
是的。方法有三种类型,分别是实例方法,类方法和静态方法。实例方法是旨在对实例进行一些更改或调用另一个实例方法的方法。因此,实例方法必须具有一个自变量。
可以在不添加self属性的情况下调用该方法吗?
您可以将方法更改为静态方法。静态方法是一种既不打算对任何实例类进行任何更改也不打算调用其他实例方法的方法。因此,您不必传递self参数。
如果要声明静态方法,则只需要用内置的staticmethod
包装即可。这是示例:
>>> class ThisIsClass():
@staticmethod
def your_method_name(a,b):
return a + b
>>> instance = ThisIsClass()
>>> instance.your_method_name(1,2)
3
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。