使用.readlines()时如何去除换行符\n

394
我有一个包含数值的 .txt 文件。
数值以以下方式列出:
Value1
Value2
Value3
Value4

我的目标是将这些值放入一个列表中。当我这样做时,列表看起来像这样:['Value1\n','Value2\n',...]。不需要\n。以下是我的代码:
t = open('filename.txt')
contents = t.readlines()

3
通常情况下,你不希望先读取所有行并将其存储在缓冲区中,然后再去除换行符/splitlines(),因为如果文件很大,这种做法会浪费2倍的内存。相反,你需要在读取每一行时通过 rstrip() 方法去除该行的换行符并进行迭代。 - smci
11个回答

-3

最简单的方法是编写 file.readline()[0:-1]。这将读取除换行符之外的所有内容。


最后一个字符并不总是换行符。可以创建一个没有以换行符结尾的文本文件(尽管大多数编辑器都会包含一个)。 - Flimm
“which is the newline.” “The” newline?这个问题显然是关于一个有多行的文件,我们想要从每一行中删除换行符。 - AMC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接