pythonで標準入力から読み込み不良パイプのファイル記述子
質問
Windowsのコマンドラインでこれを考えてみます。
scriptA.py | scriptB.py
scriptA.pyでます:
sys.stdout.write( "hello" )
scriptB.pyでます:
print sys.stdin.read()
これは、次のエラーを生成します:
c:\> scriptA.py | scriptB.py
close failed: [Errno 22] Invalid argument
Traceback (most recent call last):
File "c:\scriptB.py", line 20, in <module>
print sys.stdin.read()
IOError: [Errno 9] Bad file descriptor
「クローズに失敗しました」のメッセージがscriptA.pyの実行から来ているようです。
私はsys.stdin.read()、sys.stdin.read(1)、sys.stdin.readlines()などなどを使用する場合、それは問題ではありません。
何が問題なのですか?
解決
ファイルの関連付けから起動する場合には、標準入力/標準出力のリダイレクトが動作しないようです。 これは、Pythonに固有のものではないが、問題は、Win32のCMD.EXEによって引き起こされます。
を参照してください:ます。http://mail.python。 ORG / pipermail /のpython-バグリスト/ 2004-8月/ 024920.htmlする
所属していません StackOverflow