如何将pass类添加到类参数并放入列表中

2024-10-01 02:38:52 发布

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

我是python新手

有几个类需要传递给另一个类的函数,我不太明白怎么做

有一个类驱动程序:

class driver():
    type = "driver"
    def __init__(self, Name, Srnm, Exp):
        self.setName(Name)
        self.setSrnm(Srnm)
        self.setExp(Exp)

    def setName(self, t):
        self.__Name = t
    def setSrnm(self, t):
        self.__Srnm = t
    def setExp(self, t):
        self.__Exp = t

有一类卡车:

class truck():
    type = "car"
    def __init__(self, Number, Mark, CarCap):
        self.setNumber(Number)
        self.setMark(Mark)
        self.setCarCap(CarCap)
        
    def setNumber(self, t):
        self.__Number = t
    def setMark(self, t):
        self.__Mark = t
    def setCarCap(self, t):
        self.__CarCap = t

有一个类diriger:

class dirigeer():
    lst = []
    def add(self, c, d):
        self.lst.append([c,d])

main.py:

d1 = m1.driver('Vasya', 'Vasin', 4)
c1 = m1.truck('A666AA', 'Ford', 100)

c = m1.dirigeer
c.add(c1, d1)

如果我在不传输数据的情况下这样做,那么一切都会对我有利。如果我尝试传递给类,则会出现以下错误:

File "main.py", line 34, in <module>
    constructor()
File "main.py", line 18, in constructor
    c.add(c1, d1)
TypeError: add() missing 2 required positional arguments: 'c' and 'd'

Tags: namepyselfaddnumbermaindefdriver