パラメータ化されていないメソッドfirst
を呼び出す必要がありますが、パラメータ化されたfirst
も必要ですが、エラーが発生しています。メソッドがPythonでオーバーロードされる
>>> 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)
JavaのようにPythonでメソッドのオーバーロードを実行することはできますか?
* *オブジェクトから継承して下さい!あなたは本当に古いスタイルのクラスを望んでいないのですか? (これはPython 3では問題ではありませんが、printステートメントはPython 2を使っていると伝えています) –