Python がいかに動的であるかを考えると、これが何らかの方法で不可能であるとしたら、私はショックを受けるでしょう。
の実装を変更したいと思いsys.stdout.write
ます。
私の別の質問に対するこの回答からアイデアを得ました: https://stackoverflow.com/a/24492990/901641
私はこれを簡単に書いてみました:
original_stdoutWrite = sys.stdout.write
def new_stdoutWrite(*a, **kw):
original_stdoutWrite("The new one was called! ")
original_stdoutWrite(*a, **kw)
sys.stdout.write = new_stdoutWrite
しかし、それは私に言いますAttributeError: 'file' object attribute 'write' is read-only
。
これは、潜在的に (おそらく) ばかげたことをしないようにするための良い試みですが、とにかくやりたいと思っています。インタープリターには、私が変更できる何らかのルックアップテーブルがあると思われますが、Google でそのようなものを見つけることができませんでした。__setattr__
どちらも機能しませんでした-属性が読み取り専用であるというまったく同じエラーが返されました。
私は特にPython 2.7のソリューションを探しています.