【Python】 標準入力(出力)変更
競技プログラミングを始めて
一番最初にめんどくさいなぁと思った事は
Atcoderとかだと標準入力でデータを渡さないといけないところ。
ローカル環境でテストするとき
みんな、手入力でしているわけではないだろうなぁ、どうしてるんだろうなぁと思いつつ
結果的に僕のローカル環境では
Pythonだと以下のようにして標準入力を変更するようにした。
自分で入力する必要がなくなる。
一番最初にめんどくさいなぁと思った事は
Atcoderとかだと標準入力でデータを渡さないといけないところ。
ローカル環境でテストするとき
みんな、手入力でしているわけではないだろうなぁ、どうしてるんだろうなぁと思いつつ
結果的に僕のローカル環境では
Pythonだと以下のようにして標準入力を変更するようにした。
import sysまたは
import os
FILES = os.listdir('./test')
for FILE in FILES:
fdr = os.open('./test/' + FILE, os.O_RDONLY)
os.dup2(fdr, sys.stdin.fileno())
import sysこれで、標準入力(出力)が指定したファイル先になるので
import os
fdr = os.open('test.txt', os.O_RDONLY)
os.dup2(fdr, sys.stdin.fileno())
# fdw = os.open('ret.txt', os.O_WRONLY|os.O_CREAT)
# os.dup2(fdw, sys.stdout.fileno())
自分で入力する必要がなくなる。