从内置类继承
我想给datetime.datetime这个对象添加一些方法。看起来我们只能通过继承它来添加这些新方法。问题是,这些方法需要更新基类的日期、月份和年份的值,而我无法用新的参数调用基类的初始化方法。
我该怎么做呢?
1 个回答
2
你可以调用父类的 __init__
方法。
class Foo(datetime.datetime):
def __init__(self, argument):
datetime.datetime.__init__(self, argument)
这里的关键是,你需要明确地调用 __init__
方法,并且要手动提供第一个 self
参数,这个参数通常是 Python 自动提供的。
另外,别忘了 *
和 **
这两种调用技巧,它们可以帮助你处理那些你不想手动处理的参数,但你仍然希望能够传递给父类的构造函数。