擅长:python、mysql、java
<p>为什么不使用python的<code>set()</code>?1是非常直接的,2是需要更多的工作:</p>
<pre><code>A = [('x1','y1'), ('x2','y2'), ('x3','y3')]
B = [('x1','y1'), ('x2','y5'), ('x4','y4')]
a,b = set(A),set(B)
print '1:',a&b
axs = set(map(itemgetter(0),A))
bxs = set(map(itemgetter(0),B))
result2 = []
for c in axs&bxs:
result2.append((c,set([y for x,y in A+B if x==c]))
print '2:',result2
</code></pre>
<p>输出:</p>
^{pr2}$
<p>你可以用一个非常相似的方法来处理3</p>