レシピ追加、標準入出力をファイルにつなぎ換える
『169:標準入出力をファイルにつなぎ換える』を追加。
通常用途では sys.stdout などを、望みのファイルに結びついているファイルオブジェクトで置き換える。これで十分。
import sys fo = open('spam.txt', 'w') sys.stdout = fo
本当ににつなぎ換えるには os.dup2 を使用。
import sys import os fd = os.open('spam.txt', os.O_WRONLY|os.O_CREAT) os.dup2(fd, sys.stdout.fileno())