2009-04-03 11 views

答えて

39

このお試しください:

import fileinput 
for line in fileinput.input(): 
    process(line) 
+2

+1それはので、この方法は、 "sys.stdinを内の行のための" よりも柔軟であるがファイル名の作業はcmdの行引数として渡されます。 – user26294

12
import sys 
def main(): 
    for line in sys.stdin: 
     print line 
if __name__=='__main__': 
    sys.exit(main()) 
+0

-1:main returns None - OSに返される値を完全には*明らかにしていません。 –

+3

@ S.Lott:sys.exitがどのように扱うかは完全にはっきりしています。 –

+0

これは私が通常行う方法ですが、OPはコマンドラインで指定されたすべてのファイルを反復処理したいのに対して、stdinは繰り返し処理します。このユースケースでは、fileinputが使えます。 –

6

このような何か:

import sys 

for line in sys.stdin: 
    # whatever 
3
import sys 

for line in sys.stdin: 
    # do stuff w/line 
関連する問題