Fre*_*Foo 9 python stdin input command-line-arguments
在Python中编写面向文本的命令行程序时,我经常想要读取命令行上传递的所有文件,或者(XOR)标准输入(如Unix cat,或Perl <>).所以,我说
if len(args) == 0: # result from optparse
input = sys.stdin
else:
input = itertools.chain(*(open(a) for a in args))
Run Code Online (Sandbox Code Playgroud)
这是Pythonic这样做的方式,还是我错过了图书馆的某些部分?
eum*_*iro 13
你需要fileinput.
标准用例是:
import fileinput
for line in fileinput.input():
process(line)
Run Code Online (Sandbox Code Playgroud)