如何用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
提交
取消
