如何在 python 中逐行读取文本文件

how to read text file line to line in python

我正在尝试从文本文件中提取数据。我按照下面的代码将文本文件从字节转换为字符串。

我想从文件中提取特定数据。为此,如果我使用 for line in data2: print(line) 读取文件 它正在阅读每个字符,而不是每个单词或每行。例如,不是打印整行,而是将每个字符打印为一行。

我怎样才能按行而不是按字符阅读?

data = urllib.request.urlopen('http://lib.stat.cmu.edu/datasets/boston')
data1 = data.read()
data2 = data1.decode("utf-8")

有几种方法,你可以做到这一点。

data = urllib.request.urlopen('http://lib.stat.cmu.edu/datasets/boston')
data1 = data.read()
data2 = data1.decode("utf-8")
for line in data2.split('\n'):
  print(line)

or 

data = urllib.request.urlopen('http://lib.stat.cmu.edu/datasets/boston')
for line in data:
  print(line.strip())

转换后你有一个长字符串。只需将它拆分在位置 "\n" 并输出每一行

listOfLines = data2.split('\n')
for line in listOfLines:
    print(line)