A
呼び出し可能なクラスがあります。また、 callable にしないようにしたいA
calledのサブクラスもあります。呼び出そうとするとB
、通常の「呼び出し不可」が発生するはずです。TypeError
class A():
def __call__(self):
print "I did it"
class B(A):
def __call__(self):
raise TypeError("'B' object is not callable")
ご覧のとおり、現在の私の解決策は、法線の複製を作成することTypeError
です。標準の Python 例外のテキストをコピーしているだけなので、これは間違っているように感じます。サブクラスを呼び出し不可としてマークし、Python にその属性を処理させる方法があれば、(私の意見では) より良いでしょう。
B
それが呼び出し可能なクラスのサブクラスであることを考えると、クラスを呼び出し可能にしないための最良の方法は何A
ですか?