1

我有很多看起来像下面这样的 Perl 脚本。它的作用是自动打开作为命令行参数给出的任何文件,并在这种情况下打印该文件的内容。如果没有给出文件,它将改为从标准输入中读取。

while ( <> ) {
    print $_;
}

有没有办法在 Python 中做类似的事情而不必显式打开每个文件?

4

1 回答 1

10

Python 标准库中的fileinput模块正是为此目的而设计的,我从刚才给出的 URL 中引用了一些代码:

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

使用print代替,process您将拥有与您的 Perl 代码完全相同的内容。

于 2010-03-28T16:59:03.620 回答