我编写了许多逐行处理文件的小脚本。在 Perl 中,我使用
while (<>) {
do stuff;
}
这很方便,因为它不关心输入来自哪里(文件或标准输入)。
在 Python 中我使用这个
if len(sys.argv) == 2: # there's a command line argument
sys.stdin = file(sys.argv[1])
for line in sys.stdin.readlines():
do stuff
这似乎不是很优雅。是否有可以轻松处理文件/标准输入的 Python 习语?