我有以下问题。如何逐行打印输出文件。我能想到的一个简单例子如下。有什么想法吗?
import codecs
output=codecs.open('output.txt','w', encoding='UTF-8')
for i in range(5):
output.writelines(str(i)+'\n')
output.close()
我导入codecs
因为输入可能是其他内容,而不仅仅是值i
。
我采取以下结果:
01234
而不是:
0
1
2
3
4
答案 0 :(得分:4)
您的代码 输出换行符。检查您的编辑器是否识别\n
个换行符。但是,它是偶然的。 writelines
需要一系列行:
with open('output.txt','w', encoding='UTF-8') as output:
output.writelines(str(i)+'\n' for i in range(5))
答案 1 :(得分:0)
尝试使用write
代替writelines
。
writelines(sequence_of_strings) - >没有。把字符串写到 文件。
请注意,不会添加换行符。序列可以是任何可迭代的 对象产生字符串。这相当于调用write() 每个字符串。
另一方面:
写(str) - >没有。将字符串str写入文件。
请注意,由于缓冲,之前可能需要flush()或close() 磁盘上的文件反映了写入的数据。