Python:object作为另一个对象的参数

时间:2010-08-11 08:32:26

标签: python class object arguments

我有一个模块,包括Python中两个不同类的定义。如何使用一个类的对象作为另一个类的参数?比方说,我有Driver和Car的类定义,并且tuen想要一个Driver对象作为Car对象的参数。

3 个答案:

答案 0 :(得分:7)

更新:OP正在尝试在类定义时传递一个对象实例(或者在看到他的评论后我想)。以下答案不适用。

这是你想要达到的目标吗?

class Car:
    def __init__(self, driver):
        self.driver = driver

class Driver:
    pass

driver = Driver()
car = Car(driver)

答案 1 :(得分:1)

创建Driver对象的实例并将其传递给Car的构造函数。

如,

>>> d = Driver()
>>> c = Car(d)

或只是

>>> c = Car(Driver())

[编辑]

因此,您在定义类时尝试使用驱动程序的实例?我仍然不确定我是否理解你要做的是什么,但它听起来像某种装饰师。

def OwnedCar(driver):
    class Car(object):
        owner = driver
        #...
    return Car

steve = Driver()
SteveCar = OwnedCar(steve)

答案 2 :(得分:0)

如果我理解你的问题,这对你有帮助 假设我们有 class BankAccount:    '''在构造函数之后,我们有另一种方法'''    def transfer(self,amount,object):#object是为引用对象而传递的变量        BankAccount.credit(个体,量)        object.debit(量)

通话方法 BANK1 =的BankAccount() bank1.transfer(2000,objectname)