Python打印只有第一行

时间:2015-12-02 21:18:06

标签: python

Python新手。 使用此代码

#!/usr/bin/env python2
with open('/tmp/cadrootcomp1.firstwords',mode="rb") as f:
    print '/'.join(f.read().split('/')[:2]) + '/'

获取输出: ABC / DEF /

当原始行是abc / def / ghi

所以这很好用。需要此脚本在文件中的其他行上运行。它只处理第一行。

3 个答案:

答案 0 :(得分:1)

不确定我是否正确理解您要做的事情。如果您尝试迭代文件中的行,请尝试此操作。

with open('/tmp/cadrootcomp1.firstwords',mode="rb") as lines:
    for line in lines:
        print '/'.join(line.split('/')[:2]) + '/'

答案 1 :(得分:1)

我认为下面一个更好。我猜您在\n之后使用切片删除file.read()。更好的方法是使用strip()这样:

f.read().strip()

逐行阅读时甚至不需要这样做。

with open('/tmp/cadrootcomp1.firstwords',mode="rb") as f:
for line in f:
    print line.rsplit('/',1)[0] + '/'

答案 2 :(得分:0)

你正在寻找这样的东西:

#!/usr/bin/env python2
with open('/tmp/cadrootcomp1.firstwords',mode="rb") as f:
    for line in f:
        print '/'.join(line.split('/')[:2]) + '/'