在Python中,您可以使用以下命令读取文件并将其行加载到列表中
f = open('file.txt','r')
lines = f.readlines()
每一行都由\n
分隔,但是如果一行的内容包含\r
,则不会将其视为新行。我需要将所有\r
转换为\n
,并获得正确的列表lines
。
如果我在lines
中执行.split('\r')
,我会得到列表中的列表。
我想打开一个文件,将所有的\r
替换为\n
,关闭文件并再次读取它,然后使用readlines()
,但这似乎是浪费。
我应该如何实现它?
发布于 2009-11-24 03:04:43
f = open('file.txt','rU')
这将使用Python的universal newline support打开文件,并将\r
视为行尾。
发布于 2009-11-24 03:18:02
如果这是一个问题,以二进制格式打开,并使用以下代码进行转换:
from __future__ import with_statement
with open(filename, "rb") as f:
s = f.read().replace('\r\n', '\n').replace('\r', '\n')
lines = s.split('\n')
https://stackoverflow.com/questions/1785233
复制相似问题