두 개의 텍스트 파일이 있습니다. a.txt이,이 같은 선 (백만 라인)이 있습니다 :python은 두 개의 큰 목록을 비교하고 하나를 처리합니다.
991000000019999998,b10000021,
991000000019703408,b10000021,
991000545455435408,b10000045,
991000000029703408,b10000045,
...
첫 번째 부분은 바코드 (991000000019703408)이고, 두 번째 부분은 bib_number (b10000021)입니다. bib_number는 각 줄마다 중복 될 수 있습니다. 그러나 바코드는 고유합니다. 그래서 Set()를 사용하면 괜찮지 않다고 생각합니다. 다른 파일 b.txt에서 의 정보 만 bib_number에 대한 (600,000 기록) : (b10000045 같은) eachline의 bib_number이 아닌 경우
b10000021
b10000045
b10000215
...
지금 내가 a.txt이에, 두 개의 파일을 비교해야 b.txt,이 전체 라인은 (991000000029703408, b10000045)
과 같은 코드를 작성하지만 20 분이 지나야 만 c.txt에 출력해야합니다.
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)
두 가지 큰 목록을 비교하는 데 필요한 트릭이 있습니까? set
의 사용 덕분에
주문 하시겠습니까? 그냥 set과 set1 - set2로 바꾸지 않으면 모든 누락 된 숫자를 얻을 수 있습니다. – AChampion