« python kivyのスレッド | メイン | kivyのexe化でthred使ってる場合 »

2022年01月21日

python 標準出力の取得

1,テキストへ
import sys
sys.stdout = open(str(os.getpid()) + ".out", "w", buffering=0) #これでバファリンぐが無くなる!?
print "HELLO WORLD!" #この時点でtemp.txtに"HELLO WORLD!"がwriteされている
sys.stdout.close()

#いつもの標準出力に戻す
sys.stdout = sys.__stdout__


2,データとして取得

import sys
import io
fp = io.StringIO("")
sys.stdout = fp
print("HELLO WORLD!") #この時点でtemp.txtに"HELLO WORLD!"がwriteされている
#sys.stdout.close()
print("poge")
sys.stdout = sys.__stdout__
print("ぽにょ")
print(fp.getvalue())

投稿者 muuming : 2022年01月21日 18:00