python中从文件逐行读取

Reading line by line from a file in python

本问题已经有最佳答案,请猛点这里访问。

为了从该文件中提取一些值:

enter image description here

我需要一行一行地读。我试着一行一行地读,但不知道为什么读不好。

我试过这个:

1
2
3
4
#! /usr/bin/python
file = open('/home/results/err.txt')
for line in file.readline():
    print line

编辑:

问题:正在工作但未显示此行(这是文件)enter image description here

最后一行是:(这是生成的内容)enter image description here


您可能希望使用上下文管理器在读取行后自动关闭打开的文件,也就是说,确保在Python处理文件时不会发生意外的情况。

1
2
3
with open('/home/results/err.txt', 'r') as file:
for line in file:
    print line

readline()会一行一行地读取您的文件,但通过迭代可以单独打印这些字母。


试试这个:

1
2
3
4
#! /usr/bin/python
file = open('/home/results/err.txt')
for line in file.readlines():
    print line


file.readline()已经读了一行。在该行上迭代可以得到单个字符。

相反,使用:

1
2
for line in file:
    …


您需要遍历文件而不是行:

1
2
3
4
#! /usr/bin/python
file = open('/home/results/err.txt')
for line in file:
    print line

file.readline()只读取第一行。当您遍历它时,您将遍历行中的字符。