為了找到解決方案,我損失了幾天,但沒有成功!我有兩個行很多的文本文件。一個文件可以包含成千上萬的數(shù)字行,例如:79357795 79357796 68525650。第二個文件也包含數(shù)字,但不是太多,可能是一百行(每行還是一個數(shù)字)。我嘗試了一些“算法”,但沒有成功。現(xiàn)在,我的問題是:我可以檢查第一個文件的第一行和第二個文件的所有行,之后再檢查第一文件的第二行和第二個文件的所有行,依此類推直到文件末尾嗎?因此,我想將這兩個文件之間的差異保存在第三個文件中。謝謝大家的答復(fù),對于我最糟糕的英語,我們深表歉意。:)PS:哦,是的,我需要在Python中執(zhí)行此操作。更多詳細(xì)信息:first_file.txt包含:79790104798730706927465669180377604922097817785279023241697362566869962079577311 78509545696560076818887160643247788988177992410579684143 7903602269445507606055447934818169748018694863236910280268651099second_file.txt包含:78509545 69656007 68188871 6064324778898817 79924105 79684143 79036022 6944550760605544 79348181 69748018 69486323 6910280268651099793577947895395869350610783831116862932178886856third_file.txt需要包含在first_file.txt中不存在但在第二個文件中存在的數(shù)字,在這種情況下:793577947895395869350610783831116862932178886856
3 回答

拉風(fēng)的咖菲貓
TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個贊
就像是:
from itertools import ifilterfalse
with open('first') as fst, open('second') as snd, open('not_second', 'w') as fout:
snd_nums = set(int(line) for line in snd)
fst_not_in_snd = ifilterfalse(snd_nums.__contains__, (int(line) for line in fst))
fout.writelines(num + '\n' for num in fst_not_in_snd)
添加回答
舉報
0/150
提交
取消