出力をカスタムロガーにリダイレクトできるように、Python 2.2のprint関数をオーバーライドする方法。Python 2.2.1(WebLogic版)のprint関数をオーバーライドするには
答えて
私は2.2のバージョンをチェックしていません(そのような古いバージョンを使用している理由は何ですか?)が、私は以下のことがすべての2.xに対して有効であると思われます。
print
文は、書き込みを行うファイルを示すために、>>
で始まる最初の引数を認識します。
次は同じです。このように
print "foo", "bar"
print >>sys.stdout, "foo", "bar"
、あなたは対象のファイルとして任意のfile
オブジェクトを指定することができます。
f = open("log.txt", "w")
print >>f, "foo", "bar"
あなたはすべてのprint
のステートメント(または上記のように特定のファイルを使用していない、少なくともすべてのものを)リダイレクトしたい場合は、単にあなたの目的のファイルをsys.stdout
を置き換えることができます。
sys.stdout = open("log.txt", "w")
print "foo", "bar" # Goes to log.txt
あなたがそれを必要とする場合、元の標準出力はsys.__stdout__
経由でまだ使用可能です。
ありがとう、私はそれを使用できるようだ!しかし、目標はファイルにリダイレクトするのではなく、ロガーにリダイレクトすることです。どのように私はトリックを行うことができるオブジェクトのようなファイルを実装することができますか?ところで、私はwlst(WebLogic Language Scripting Tool)を使用して実行する必要があるスクリプトを作成しているため、Pythonの古い古いバージョンを使用しています – Abbadon
2つのオプションは 'print'ステートメントの代わりに' logging'モジュールを使用するか、 'サブプロセス'はロガーと連携する外部コマンドへのパイプを開きます。 (いずれかが2.2で利用可能であると仮定します) – chepner
問題は私はprintステートメントにアクセスできません!私はコードを変更することはできません。私はprintステートメントを利用する既存の関数を呼び出しています。 – Abbadon
- 1. print文をグローバルにオーバーライドするpython
- 2. モジュールレベルの関数をオーバーライドするPythonユニットテスト
- 3. 関数型のPythonでのループprint for
- 4. pythonのprint関数とnumpy.savetxt 3
- 5. python print()関数の新しい行
- 6. weblogicアプリケーションライブラリをオーバーライドする方法は?
- 7. Python scipy overloadベータ版の_stats関数
- 8. Python Decoratorは関数の引数をオーバーライドします
- 9. テスト関数print behavior
- 10. print文からPythonの関数を呼び出せますか?
- 11. pythonでは、print関数の出力をstderrにリダイレクトできますか?
- 12. Python:オブジェクトのグローバルリストを印刷するときにprint関数がハングします
- 13. スレッドモジュールのスレッド関数の値を表示するには、print/append
- 14. void print関数のエラー
- 15. c()関数のprint 0
- 16. Pythonの "print"関数はどのように機能していますか?
- 17. Pythonのprint文は
- 18. 'javascript関数をオーバーライドする
- 19. 親関数をオーバーライドする
- 20. ストリーム処理:print関数c#
- 21. スペースを取り除き、pythonのprint関数で '{'をインクルードする方法
- 22. Oracle Weblogic AS(WebLogic Server:10.3.4.0)へのアプリケーションのデプロイに関するヒント
- 23. スクレーパーで "print"の代わりに "return"関数を使用する
- 24. pythonでのprint()とprintの違い2.7.10
- 25. CodeceptJSの関数をオーバーライドする方法
- 26. firebase deploy --only関数は既存の関数をオーバーライドします
- 27. pythonで待機する前に非同期関数でprint関数が呼び出されない
- 28. Pythonは、同じクラスの別の関数内のクラス関数で使用されるリストをオーバーライドします
- 29. Python3で再帰関数の中でprint()を使用する
- 30. PythonのZip関数のVBA版(各ループ用)
Python 2.2ではprintコマンドだけがありません。 – chepner