0

条件を持ち、while(1)データベースのテーブルから入力を受け取り、それを処理して何かを書き込むpythonスクリプトがありますstdoutが、その出力をファイルにリダイレクトできません.すべての標準的な方法を試してみたところ、スクリプトが停止しないため、おそらく見つかりましたの出力をファイルCtrl-Zに追加することはできませんstdout
手がかりはありますか??

4

3 に答える 3

2

改行を書くことは決してないと思いますか?sys.stdout.flush()それが本当なら、時々する必要があります。

于 2013-06-20T12:43:33.310 に答える
1

-u次のオプションを使用して、I/O バッファリングを無効にすることもできますpython -u yourscript.py。(これにより、場合によってはパフォーマンスが低下する可能性があります。)

于 2013-06-20T12:49:55.463 に答える
0

使ってみて

    orig_stdout = sys.stdout
    completeName = os.path.abspath("**Path name of the file**")
    f = file(completeName, 'w')
    sys.stdout = f
    print "Whatever you want to put into file"
    sys.stdout = orig_stdout
    f.close()
于 2013-06-20T12:46:08.620 に答える