在 Python 中从文件数据中去除换行符
在 Python 中使用 readlines() 方法读取文件时,生成的列表元素包含换行符在最后。要消除这些换行符,可以使用多种方法。
一种方法是在读取整个文件后利用字符串的 splitlines() 函数在换行符上分割行:
temp = file.read().splitlines()
或者,您可以手动删除换行符:
temp = [line[:-1] for line in file]
注意:此方法假设文件以换行符结尾;否则,最后一行将被截断。
为了确保存在结束换行符,您可以手动添加一个:
with open(the_file, 'r+') as f: f.seek(-1, 2) if f.read(1) != '\n': f.write('\n') f.flush() f.seek(0) lines = [line[:-1] for line in f]
另一种选择是使用 strip() 删除换行符:
[line.rstrip('\n') for line in file]
为了简洁起见,您还可以使用以下内容方法:
[line[:-(line[-1] == '\n') or len(line)+1] for line in file]
理解 readlines()
readlines() 方法迭代 readline(),其中包括换行符。因此,readlines() 也是如此。为了保持一致性,writelines() 不会添加换行符,确保使用这两种方法时都会生成精确的副本。
以上是如何有效地从使用 Python 的 readlines() 读取的文件数据中删除换行符?的详细内容。更多信息请关注PHP中文网其他相关文章!