在Python中逐行读取.text文件

时间:2014-12-20 05:51:07

标签: python string readfile string-split

我的.txt文件如下所示:

![在此处输入图片说明] [1]

如何将我的txt文件读入一个字符串对象,该对象可以用与上面相同的格式打印?

I have tried: 
    with open ("/Users/it/Desktop/Classbook/masterClassList.txt", "r") as myfile:
    data = myfile.read()

for item in data:
    print item

此代码打印新行上的每个字符。我需要将txt文件作为字符串才能调用字符串方法,特别是'string.startswith()'

正如您所看到的,在我的IDE控制台中,行在每行内容之间打印出黑色的空格行。如何消除这些空白行?

这是我的工作解决方案:

with open ("/Users/it/Desktop/Classbook/masterClassList.txt", "r") as myfile:
    data = myfile.read()
    for line in data:
        line.rstrip()

print data

2 个答案:

答案 0 :(得分:9)

阅读行的最有效记忆方式是:

with open ("/Users/it/Desktop/Classbook/masterClassList.txt", "r") as myfile:
    for line in myfile:
        print line

即。您不需要将整个文件读入内存,只能逐行读取。以下是python教程的链接:https://docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects

答案 1 :(得分:4)

最简单的可能是:

data = myfile.readlines()

这可以和其他代码一起使用 - 或者,你可以直接在我的文件上循环(里面 with :-)然后你就得到了一个一次排队。请注意,这些行包含结尾\n,因此您可能希望在打印前.strip()& c: - )