如何在另一个类的方法中使用来自不同类的一个对象?

2024-05-16 11:39:10 发布

您现在位置:Python中文网/ 问答频道 /正文

初学者,所以请容忍我。我试图将一个对象从一个类调用到另一个类的方法中。但我得到了一个“missing 1 required positional argument:”错误。当我玩代码的时候,我并没有更接近一个解决方案

我从方法中删除了“self”来调整杂务,但是没有定义self.workload。然后我在两次(ch1,ch1)中添加了这个对象,并得到一个错误:error Chore'object没有属性'workload'。我使用了(w1,ch1)并得到了一个错误:Workload没有属性Workload

class Chore:

    def __init__ (self, ch_name, value=1, completion=True):
        self.ch_name = ch_name
        self.value = value
        self.completion = completion    

class Workload:

    def __init__ ():
        self.workload = []
        self.totalchores = 0


    def add_chore (self,chore):
        self.workload.append(chore)
        self.totalchores+=1

ch1=Chore('pick up')
w1=Workload
w1.add_chore(ch1)

我希望有c1附加到一个空列表

TypeError:add\u chore()缺少1个必需的位置参数:“chore”


Tags: 对象nameselfaddvaluedef错误ch
2条回答

您没有实例化工作负载

w1 = Workload()

是的,正如Daniel所说,您没有实例化工作负载。同样,在init中,您使用self来启动workload和totalchore,然后,由于您没有将其作为参数接收,这些变量将毫无用处

相关问题 更多 >