将 \r 文本转换为 \n 以便 readlines() 按预期工作
在 Python 中,您可以读取文件并将其行加载到列表中,方法是使用
f = open('file.txt','r')
lines = f.readlines()
每个单独的行由 \n
分隔,但如果行的内容有 \r
那么它不被视为新行。我需要将所有 \r
转换为 \n
并获取正确的列表 lines
。
如果我在 lines
内执行 .split('\r')
我将在列表中获得列表。
我想过打开一个文件,将所有 \r
替换为 \n
,关闭文件并再次读取它,然后使用 readlines()
但这似乎很浪费。
我应该如何实施这个?
In Python, you can read a file and load its lines into a list by using
f = open('file.txt','r')
lines = f.readlines()
Each individual line is delimited by \n
but if the contents of a line have \r
then it is not treated as a new line. I need to convert all \r
to \n
and get the correct list lines
.
If I do .split('\r')
inside the lines
I'll get lists inside the list.
I thought about opening a file, replace all \r
to \n
, closing the file and reading it in again and then use the readlines()
but this seems wasteful.
How should I implement this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这将使用 Python 的 通用换行符支持 和
\r 被视为行尾。
This opens the file with Python's universal newline support and
\r
is treated as an end-of-line.如果有问题,请以二进制格式打开并使用以下代码进行转换:
If it's a concern, open in binary format and convert with this code: