你可以用
csv.DictReader
和
csv.DictWriter
import csv
file1, file2, file3 = 'file1.txt', 'file2.txt', 'file3.txt'
col_name = raw_input('Enter File1 column1 name to compare:')
uids = set()
with open(file1) as fo1:
for row in csv.DictReader(fo1, delimiter='|'):
udis.add(row[col_name])
with open(file2) as fo2:
with open(file3, 'w') as fo3:
reader = csv.DictReader(fo2, delimiter='|')
writer = csv.DictWriter(fo3, delimiter='|', fieldnames=reader.fieldnames)
writer.writeheader()
for row in reader:
if row[col_name] in uids:
continue
writer.writerow(row)
file3.txt
Number|ID|Date|Name
987654|4|26-Dec-2017|Joseph
765551|5|27-Dec-2017|William