<p>这应该能奏效。你知道吗</p>
<pre><code>import csv
total = "C:\\...total.txt" #set path to your file!
unique = "C:\\...unique.txt"
newfile = "C:\\...match.csv"
a = []
b = []
towrite = []
with open(total, "r") as rcursor1: #read the document
for trow in rcursor1: #read each row
row1 = trow.split("\t") #split it by your seperator
a.append(row1[1:]) #we are only interested in everything from column b onwards
with open(unique, "r") as rcursor2:
for urow in rcursor2:
row2 = urow.split("\t")
b.append(row2)
print "This is a", a
print len(a)
print "This is b", b
print len(b)
a1 = set(map(tuple, a)) #lists are hashable, but we need unhasable object to work with set
b1 = set(map(tuple, b)) #that why change list to tuples, tuples are not hashable
matches = set(a1).intersection(b1) #find the matches, best is to take shorter list as first argument for better perfomance!
print "Our matches, unsorted!", matches
with open(newfile, 'wb') as wcursor: #write to file
for i in matches:
c = list(i)
d = ",".join(c)
print d
wcursor.write(str(d)+"\n")
</code></pre>