如何用Python逐行读取大文件我想遍历整个文件的每一行。一种方法是读取整个文件,将其保存到列表中,然后遍历感兴趣的行。这个方法使用了大量的内存,所以我正在寻找一个替代方法。到目前为止我的代码是:for each_line in fileinput.input(input_file):
do_something(each_line)
for each_line_again in fileinput.input(input_file):
do_something(each_line_again)执行此代码将给出一条错误消息:device active.有什么建议吗?目的是计算成对的字符串相似度,意思是对于文件中的每一行,我要计算Levenshtein与其他每一行的距离。
3 回答
沧海一幻觉
TA贡献1824条经验 获得超5个赞
with open(...) as f: for line in f: # Do something with 'line'
withfor line in ff
胡子哥哥
TA贡献1825条经验 获得超6个赞
剥去新线路:
with open(file_path, 'rU') as f:
for line_terminated in f:
line = line_terminated.rstrip('\n')
...'\n''\r', '\n''\r\n'.
编辑-
Unix上的Python 2- open(file_path, mode='rU')-所需 [谢谢 @Dave ]Windows上的Python 2- open(file_path, mode='rU')-任选 Python 3- open(file_path, newline=None)-任选
newlineNonemode'r'U\r\n\n.
为了保留本机线路终止符:
with open(file_path, 'rb') as f: with line_native_terminated in f: ...
in
添加回答
举报
0/150
提交
取消
