überladen von Methoden in python

Muss ich anrufen unparameterised Methode first, aber auch parametrisierte first, aber es gibt einen Fehler.

>>> class A:
...     def first(self):
...             print 'first method'
...     def first(self,f):
...             print 'first met',f
...
>>> a=A()
>>> a.first()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: first() takes exactly 2 arguments (1 given) 

Ist es möglich, die Methode überladen in Python wie in Java?

  • Bitte erbt von dem Objekt! Sie wollen nicht wirklich ein old-style Klasse, und du? (Dies wäre ein nicht-Problem in Python 3, aber Ihre print-Anweisungen, Sag mir, dass du mit Python 2.)
InformationsquelleAutor user1272269 | 2012-03-15
Schreibe einen Kommentar