On Mon, 14 Feb 2011 08:27:10 +1000, James Mills wrote: > On Mon, Feb 14, 2011 at 8:21 AM, MRAB <pyt...@mrabarnett.plus.com> > wrote: >> I would've done it this way: >> >> class FasterShip(Ship): >> def __init__(self, speed=0, **kwargs): >> Ship.__init__(self, **kwargs) >> self.speed = speed > > What's the difference between calling the base class's constructor > directly and using the super type ?
If you have *only* single inheritance, then there is no practical difference and no harm in using super(). If you have multiple inheritance, then you *must* use super(), otherwise your method will not correctly call all the superclasses that it needs to. -- Steven -- http://mail.python.org/mailman/listinfo/python-list