我是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(使用前将#替换为@)