Je lisais 'Dive Into Python' et dans le chapitre sur les classes, il donne cet exemple:
class FileInfo(UserDict):
"store file metadata"
def __init__(self, filename=None):
UserDict.__init__(self)
self["name"] = filename
L'auteur dit ensuite que si vous souhaitez remplacer la __init__
méthode, vous devez appeler explicitement le parent __init__
avec les paramètres corrects.
- Et si cette
FileInfo
classe avait plus d'une classe d'ancêtres?- Dois-je appeler explicitement toutes les
__init__
méthodes des classes ancêtres ?
- Dois-je appeler explicitement toutes les
- Dois-je également le faire pour toute autre méthode que je souhaite remplacer?