首页 > 后端开发 > Python教程 > 为什么我在 Python 中收到'TypeError: Missing 1 required Positional Argument: 'self'”错误?

为什么我在 Python 中收到'TypeError: Missing 1 required Positional Argument: 'self'”错误?

DDD
发布: 2024-12-17 17:00:13
原创
340 人浏览过

Why Am I Getting the

理解“TypeError: Missing 1 required Positional Argument: 'self'”错误

在 Python 中使用类和对象时,您可能会遇到如下错误消息:

TypeError: Missing 1 required positional argument: 'self'
登录后复制

当您调用时会出现此错误不提供 self 参数的类方法。所有类方法都需要 self 参数作为其第一个参数。

Python 如何初始化类

要理解此错误,重要的是要知道当您创建一个类,构造方法(__init__)会被自动调用。此方法负责初始化对象的属性。

调用类方法

创建对象后,您可以调用其方法。这些方法可以访问对象的属性和功能。但是,请记住,所有类方法都需要 self 参数,该参数引用调用该方法的类的实例。

排除错误

中您的代码示例:

class Pump:    
    def __init__(self):
        print("init")

    def getPumps(self):
        pass

p = Pump.getPumps()  # Error here
print(p)
登录后复制

发生错误是因为您在没有提供 self 参数的情况下调用 getPumps() 。要修复它,您需要首先创建 Pump 类的实例,然后在该实例上调用 getPumps() 方法:

p = Pump()
p.getPumps()
登录后复制

现在,当您创建实例时将调用 __init__ 构造函数, getPumps() 方法将可以访问 self 参数,从而允许它对类的特定实例进行操作。

以上是为什么我在 Python 中收到'TypeError: Missing 1 required Positional Argument: 'self'”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板