【问题标题】:How do I use one object from separate class in another class's method?如何在另一个类的方法中使用来自不同类的一个对象?
【发布时间】:2019-06-25 08:23:39
【问题描述】:

初学者,请多多包涵。我试图将一个类中的一个对象调用到另一个类的方法中。但我得到一个“缺少 1 个必需的位置参数:”错误。当我使用代码时,我并没有更接近解决方案。

我从方法中删除了“self”以对齐杂项,但未定义 self.workload。然后我两次添加了对象(ch1,ch1)并得到一个错误,错误杂项'对象没有属性'工作负载'。我玩了(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_chore() 缺少 1 个必需的位置参数:'chore'

【问题讨论】:

标签: python oop methods


【解决方案1】:

您没有实例化 Workload。

w1 = Workload()

【讨论】:

  • 谢谢。感觉我不应该为了一个简单的疏忽而浪费任何人的时间,但我真的被困住了。
【解决方案2】:

是的,正如 Daniel 所说,您没有实例化 Workload。同样在 init 中,您使用 self 来启动工作负载和总任务,然后,由于您没有收到它作为参数,这些变量将无处可去。

【讨论】:

  • 感谢您的反馈。
猜你喜欢
  • 2020-12-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多