我有很多看起来像下面这样的 Perl 脚本。它的作用是自动打开作为命令行参数给出的任何文件,并在这种情况下打印该文件的内容。如果没有给出文件,它将改为从标准输入中读取。
while ( <> ) {
print $_;
}
有没有办法在 Python 中做类似的事情而不必显式打开每个文件?
我有很多看起来像下面这样的 Perl 脚本。它的作用是自动打开作为命令行参数给出的任何文件,并在这种情况下打印该文件的内容。如果没有给出文件,它将改为从标准输入中读取。
while ( <> ) {
print $_;
}
有没有办法在 Python 中做类似的事情而不必显式打开每个文件?
Python 标准库中的fileinput模块正是为此目的而设计的,我从刚才给出的 URL 中引用了一些代码:
import fileinput
for line in fileinput.input():
process(line)
使用print
代替,process
您将拥有与您的 Perl 代码完全相同的内容。