私は2つのテキストファイルを持っています。 A.TXTでは、このような行(一方万行)がある。pythonは2つの大きいリストを比較し、1つを処理します
991000000019999998,b10000021,
991000000019703408,b10000021,
991000545455435408,b10000045,
991000000029703408,b10000045,
...
最初の部分は、バーコード(991000000019703408)であり、第二の部分はbib_number(b10000021)です。 bib_numberは各行で重複している可能性がありますが、バーコードは一意です。だからSet()を使うと大丈夫じゃないと思う。別のファイルB.TXT、のみbib_number(60万記録)についての情報で :
b10000021
b10000045
b10000215
...
(b10000045のような)eachlineのbib_numberがでない場合は今、私は、A.TXTに、2つのファイルを比較する必要がありますb.txt、この全行は、(991000000029703408、b10000045、)のようにc.txtに出力する必要があります
私はこのようなコードを書いていますが、私は20分までreusltを持っていません。
with open("a.txt", "r") as f1,open("b.txt", "r") as f2,open("c.txt","w") as f3:
total_bb=f1.readlines()
list_match=f2.readlines()
for item_bb in total_bb:
recordList=re.split(",",item_bb)
item_bb_w=(recordList[1])+'\n'
if item_bb_w not in list_match:
f3.write(item_bb)
これらの2つの大きなリストを比較するにはどんなトリックですか? set
Sを使用したおかげで
ご注文はお考えですか?単に 'set'sにするだけでなく、' set1 - set2'はあなたにすべての不足数を与えます。 – AChampion