【发布时间】:2012-11-21 21:53:17
【问题描述】:
我有两个类:基类 A 和派生类 B。在 B 的构造函数中,我尝试使用 A 的构造函数来初始化实例。为什么派生类的构造函数中赋值“self = A(x)”不起作用?
class A:
def __init__(self, x=0):
print "constructing A"
self.x = x
def printx(self):
print "x =",self.x
class B(A):
def __init__(self,x):
A.__init__(self)
print "constructing B"
self = A(x)
self.printx()
b = B(2)
b.printx()
输出:
constructing A
constructing B
constructing A
x = 2
x = 0
【问题讨论】:
-
你到底想做什么?即,您的预期输出是什么?
标签: python class inheritance constructor derived