擅长:python、mysql、java
<p>我重写了在扁平列表理解中使用<code>collections.Counter</code>,计算名字(使用<code>str.partition</code>),并在出现超过1次时过滤名字:</p>
<pre><code>l = [["John Knight", "John Doe", "Erik Peterson"],["Fred Douglas", "John Stephans", "Mike Dud", "Mike Samuels"]]
import collections
x = [k for sl in l for k,v in collections.Counter(x.partition(" ")[0] for x in sl).items() if v>1]
print(x)
</code></pre>
<p>结果:</p>
<pre><code>['John', 'Mike']
</code></pre>