Python:逐行解析和打印文本文件

Python:逐行解析和打印文本文件,python,python-3.x,Python,Python 3.x,我有以下问题。如何逐行打印输出文件。下面是一个简单的例子。有什么想法吗 import codecs output=codecs.open('output.txt','w', encoding='UTF-8') for i in range(5): output.writelines(str(i)+'\n') output.close() 我导入编解码器,因为输入可能是其他内容,而不仅仅是值I 我得出以下结论: 01234 而不是: 0 1 2 3 4 尝试使用write而不是writ

我有以下问题。如何逐行打印输出文件。下面是一个简单的例子。有什么想法吗

import codecs
output=codecs.open('output.txt','w', encoding='UTF-8')
for i in range(5):
   output.writelines(str(i)+'\n')
output.close()
我导入
编解码器
,因为输入可能是其他内容,而不仅仅是值
I

我得出以下结论:

01234
而不是:

0
1
2
3
4

尝试使用
write
而不是
writelines

writelines(字符串的顺序)->无。将字符串写入 文件

请注意,不添加换行符。序列可以是任何可编辑的 对象生成字符串。这相当于为调用write() 每根绳子

另一方面:

写入(str)->无。将字符串str写入文件

请注意,由于缓冲的原因,之前可能需要使用flush()或close() 磁盘上的文件反映了写入的数据


尝试使用
write
而不是
writelines

writelines(字符串的顺序)->无。将字符串写入 文件

请注意,不添加换行符。序列可以是任何可编辑的 对象生成字符串。这相当于为调用write() 每根绳子

另一方面:

写入(str)->无。将字符串str写入文件

请注意,由于缓冲的原因,之前可能需要使用flush()或close() 磁盘上的文件反映了写入的数据

您的代码不会输出换行符。检查编辑器是否识别新行。然而,它这样做是偶然的<代码>写入线需要一系列行:

with open('output.txt','w', encoding='UTF-8') as output:
  output.writelines(str(i)+'\n' for i in range(5))
您的代码不会输出换行符。检查编辑器是否识别新行。然而,它这样做是偶然的<代码>写入线需要一系列行:

with open('output.txt','w', encoding='UTF-8') as output:
  output.writelines(str(i)+'\n' for i in range(5))

cat output.txt=='0\n1\n2\n3\n4\n'
@JakobBowyer对不起,我没抓住你!如果我
cat
我得到的输出内容writelines()没有添加行分隔符。Ref
cat output.txt=='0\n1\n2\n3\n4\n'
@JakobBowyer对不起,我没抓到你!如果我
cat
我得到的输出内容writelines()没有添加行分隔符。Ref write()@indiag Yes也一样,
writelines
的工作方式相同(抱歉,我在发布前没有检查)。但是,在编写代码时,您应该使用
write
,因为您向它传递了一个字符串。不过,代码应该可以正常工作。write()@indiag Yes也是如此,
writelines
的工作方式也一样(很抱歉,我在发布之前没有检查)。但是,在编写代码时,您应该使用
write
,因为您向它传递了一个字符串。不过,代码应该可以正常工作。我不知道如何检查编译器是否识别“\n”。我在python 3.1 idle中进行了测试。一旦控制流移出,该文件将自动关闭。我不知道如何检查编译器是否识别“\n”。我在Python3.1idle中进行了测试。一旦控制流移出了文件,该文件将自动关闭。