Python中相当于Perl的while (<>) {...}?
我写了很多小脚本,用来逐行处理文件。在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的写法,可以更简单地处理文件和标准输入呢?