擅长:python、mysql、java
<p>我可能会错过一些细节,但似乎有点太简单了:</p>
<pre><code>[np.intersect1d(a,b) for a in x for b in y]
</code></pre>
<p>输出:</p>
<pre><code>[array([1]),
array([2]),
array([3]),
array([4, 5]),
array([6, 7]),
array([ 8, 9, 10])]
</code></pre>
<p>上面包括重复项,例如<code>x=[[1,2,3],[1,4,5]]</code>和<code>y=[[1,6,7]]</code>将给出<code>[[1],[1]]</code></p>
<hr/>
<p>如果要查找唯一的交点,请执行以下操作:</p>
<pre><code>[list(i) for i in {tuple(np.intersect1d(a,b)) for a in x for b in y}]
</code></pre>
<p>输出:</p>
<pre><code>[[8, 9, 10], [6, 7], [1], [4, 5], [2], [3]]
</code></pre>