0
fh=open('Spam.mbox',encoding='utf-8')
data=fh.read()
for line in data:
    print(line)

当我执行上述代码时,python 一次打印一个字符而不是逐行打印数据。请指教。

4

2 回答 2

1

您可以使用该readlines()功能来做到这一点。

with open('Spam.mbox',encoding='utf-8') as f:
    data = f.readlines()

使用该data变量,您可以对其进行迭代并打印每一行

for i in data:
    print(i)
于 2020-07-20T13:36:04.817 回答
0

读取文件时使用 with 语句,因为这样文件将在处理后关闭。

逐行阅读:

with open("textfile.txt", "r") as f:
    for line in f:
        print(line)

阅读所有行,然后遍历该行:

with open("textfile.txt", "r") as f2:
    lines = f2.readlines()
for ln in lines:
    print(ln)
于 2020-07-20T14:00:24.880 回答