首页 > 后端开发 > Python教程 > 如何在Python中读取没有换行符的文件?

如何在Python中读取没有换行符的文件?

DDD
发布: 2024-12-30 20:46:14
原创
718 人浏览过

How to Read a File in Python Without Newlines?

如何在 Python 中读取文件而不保留换行符

在 Python 中,使用 open(filename, 'r') 读取文件。 readlines() 提供末尾带有换行符的字符串列表。在某些情况下,这种行为可能是不受欢迎的。本文探讨了几种读取不带换行符的文件的方法。

方法 1:使用 str.splitlines()

此方法将整个文件读取为字符串,并使用 str.splitlines() 函数将其拆分为单独的行。结果是不带换行符的字符串列表:

temp = file.read().splitlines()
登录后复制

方法 2:手动剥离换行符

如果首选列表理解和切片方法,则使用以下方法可以使用:

temp = [line[:-1] for line in file]
登录后复制

但是,此解决方案假设文件以换行符。否则,最后一行将丢失最后一个字符。

方法 3:在文件末尾添加换行符

为了避免丢失最后一个字符,可以在文件末尾添加换行符在读取之前添加到文件末尾:

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]
登录后复制

方法 4:使用rstrip()

此方法提供了手动剥离换行符的替代方法:

[line.rstrip('\n') for line in file]
登录后复制

方法 5:使用条件切片

尽管可读性较差,但该方法利用了或的布尔求值运算符:

[line[:-(line[-1] == '\n') or len(line)+1] for line in file]
登录后复制

注意: Python 中的 readlines() 方法会在返回的字符串列表中维护换行符,因为 readline() 本身会保留它们。

以上是如何在Python中读取没有换行符的文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板