Python:通过实例对象调用方法:“缺少 1 个必需的位置参数:'self'”[重复]

2023-11-24

我是Python新手。我编写了两个类,第二个类具有第一个类的实例作为成员变量。现在我想通过类 1 中的实例调用类 2 的方法。我找不到答案。像这样的东西:

class Class1:
    def uselessmethod(self):
        pass

class Class2:
    def __init__(self):
        self.c = Class1()

    def call_uselessmethod(self):
        self.c.uselessmethod()

k = Class2
k.call_uselessmethod() # Error!

给出以下错误:

k.call_uselessmethod() #Error
TypeError: call_uselessmethod() missing 1 required positional argument: 'self'

知道这里发生了什么吗?提前致谢。


call_uselessmethod要求首先有一个实例Class2在你使用它之前。但是,通过这样做:

k = Class2

你没有分配k到一个实例Class2反而Class2 itself.

创建一个实例Class2, add ()类名后:

k = Class2()
k.call_uselessmethod()

现在,您的代码将起作用,因为k指向一个实例Class2就像它应该的那样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:通过实例对象调用方法:“缺少 1 个必需的位置参数:'self'”[重复] 的相关文章

随机推荐

  • 在中间件上下文中获取 starlette 请求正文

    我有这样的中间件 class RequestContext BaseHTTPMiddleware async def dispatch self request Request call next RequestResponseEndpoi
  • 独立于语言的 JSP 自定义模式的 JSTL formatNumber

    我正在使用 JSP 开发一个小应用程序 我需要将欧洲应用程序转换为国际应用程序 与美国格式兼容 等 我已经为标签创建了模式选项formatNumber here但这始终取决于您的应用程序的区域设置 示例1 我有一个区域设置en US格式编号
  • Android:为什么我们需要使用 R2 而不是 R 和 butterknife?

    我一直在使用牛油刀几个月来 我刚刚在其文档中注意到它说 现在确保在所有黄油刀中使用 R2 而不是 R 注释 这是为什么 我一直在使用 R 一切都很完美 仅在构建 Android 库项目时才需要使用 R2 https github com J
  • 稳健地裁剪照片上的旋转边界框

    我正在尝试稳健地提取轮廓的旋转边界框 我想拍摄一张图像 找到最大的轮廓 获取其旋转的边界框 旋转图像以使边界框垂直 然后裁剪到大小 为了进行演示 下面是链接在以下代码中的原始图像 我想最终将那只鞋子旋转到垂直并裁剪到尺寸 以下代码来自这个答
  • 使用 Intent.ACTION_PICK 打开图像

    我正在尝试使用intent ACTION PICK 打开图像 但是当我使用startActivityForResoult 启动活动时 我的应用程序崩溃了 有什么线索表明我做错了什么吗 public void button load imag
  • 使用 PHP 删除 .php 扩展名

    我在这里需要一些帮助 我正在使用它来修复我的 URL 但我不知道如何删除 php 扩展名 URL 现在看起来像这样 http mydomain com page php foo 123 bar 456 function decode URL
  • Javascript 在视口外的点获取元素

    是否有类似于 document elementFromPoint x y 的东西适用于视口之外的元素 根据 document elementFromPoint 的 MDN 文档 https developer mozilla org en
  • 无需本地服务器安装的 SharePoint 2010 开发

    我想在不安装本地 SharePoint 的情况下开发 SharePoint 2010 Web 部件 我的意思是我不想安装 SharePoint 服务器 因为我不需要它而且它太大了 我发现了一些关于此的问题 但我仍然无法让它工作 我找到了一篇
  • 如何通过 cloudformation 或 sam 使用 api 网关阶段?

    我在用AWS SAM部署我的 lambda 和 api 网关 下面是我的模板 yaml 文件 AWSTemplateFormatVersion 2010 09 09 Transform AWS Serverless 2016 10 31 D
  • Slim 4 中的路由中间件不会停止调用路由中的可调用对象

    我在 Slim4 中的授权中间件上遇到了困难 这是我的代码 app AppFactory create app gt add new Authentication app gt group providers function RouteC
  • 使用导航图范围注入视图模型:NavController 在 onCreate() 之前不可用

    我在应用程序中使用导航组件 并在同一图中的多个片段之间使用共享 ViewModel 现在我想用这个图形范围实例化 ViewModelthis 如你所知 在碎片中我们应该注入对象 ViewModel etc onAttach 但是当我想这样做
  • 解析器错误恢复可以由语法自动引导吗?

    我正在编写一个 LALR 解析器生成器作为一个宠物项目 我使用紫龙书来帮助我进行设计 我从中了解到解析器中有四种错误恢复方法 恐慌模式 开始转储输入符号 直到找到编译器设计者预先选择的符号 短语级恢复 将输入字符串修改为允许当前产生减少的内
  • C# Picturebox透明背景似乎不起作用

    对于我的一个项目 我需要以透明背景显示图像 我制作了一些具有透明背景的 png 图像 为了检查这一点 我在 Photoshop 中打开了它们 现在我有一个扩展 PictureBox 的类 class Foo PictureBox publi
  • Pygame显示位置

    创建 pygame 窗口后我需要窗口位置 window pygame display set mode width height 0 32 pygame init 默认情况下 窗口从 0 0 开始 但如果用户更改窗口位置 我还需要 x y
  • 将多个水平 RecyclerView 一起滚动

    我正在创建一个类似于 EPG 的视图 其中我有多个水平视图RecyclerViews 如电视节目 封装在 LinearLayout 内 当我滚动 RecyclerView 之一时 我希望其余视图一起滚动 Override public vo
  • Java MongoDB 一次保存多个文档

    我有一个更新的对象 文档列表 我需要立即保存列表中的所有对象 我在 MongoTemplate 中看到 save 但它一次只能保存一个文档 有什么方法可以一次保存多个文档 或者我需要循环调用保存 您可以使用insertAll of Mong
  • 使用 URL 从 Firebase 存储中删除文件

    我正在尝试使用文件 URL 从 Firebase 存储中删除文件 我的问题是 getReferenceFromUrl 无法解决 示例代码在这里 StorageReference mStorageRef String storageurl h
  • Windows 下 MySQL 的自动补全

    有谁知道是否有办法让自动补全在 Windows 下的 MySQL 命令行客户端中工作 对我来说 它在 Linux 下工作得很好 但在 Windows 下只需移动光标即可 它应该这样工作 C gt mysql auto rehash 或者配置
  • 测试 3D 点是否位于 3D 多面体内部

    给定一个由三角网格表示的边界定义的 3D 多面体 如何实现一种算法来确定给定的 3D 点是否属于多面体的内部 有多种方法可以实现此功能 最简单的方法是创建一条从该点开始并指向任意方向的无限射线 或很长的线段 然后计算射线与三角形之间的交点数
  • Python:通过实例对象调用方法:“缺少 1 个必需的位置参数:'self'”[重复]

    这个问题在这里已经有答案了 我是Python新手 我编写了两个类 第二个类具有第一个类的实例作为成员变量 现在我想通过类 1 中的实例调用类 2 的方法 我找不到答案 像这样的东西 class Class1 def uselessmetho