[Python-de] Überladen von Methoden
Hartmut Goebel
h.goebel at goebel-consult.de
Mit Feb 16 20:18:58 CET 2005
Christian Helmbold wrote:
> wie ich gerade mit Entsetzen feststellen musste, kann man in Python gar
> keine Methoden überladen! Wie umgeht man diese Schwäche am elegantesten?
Du meinst überschreiben mit einer Methode gleichen Namens aber
unterscheidlicher Signatur? Das ist bei Python nicht nötig.
> Übergebt ihr einfach None, wenn ein Parameter leer ist? Bei normalen
Nein, man verwendet sinnvollerwiese Keyword-Arguments und
Default-Parameter, etwa so:
def methode1(self, arg1, arg2, arg3=42, arg4=None, arg5='ich-du-er-sie-es')
und dann:
abc.methogde1('lalla', 105)
abc.methogde1('lalla', 105, arg5='meins-deins-ihres')
abc.methogde1('lalla', 105, 9999, zfb, 'nix')
--
Schönen Gruß - Regards
Hartmut Goebel
| Hartmut Goebel | IT-Security -- effizient |
| h.goebel at goebel-consult.de | www.goebel-consult.de |