我有一个模块,包括Python中两个不同类的定义。如何使用一个类的对象作为另一个类的参数?比方说,我有Driver和Car的类定义,并且tuen想要一个Driver对象作为Car对象的参数。
答案 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)