擅长:python、mysql、java
<p>下面是另一种使用<code>setdefault</code>(即,您不必导入<code>collections</code>:</p>
<pre><code>>>> lines = [
... 'PAIR 1MFK 1 URANIUM 82 HELIUM 112 3.6997',
... 'PAIR 2JGH 2 PLUTONIUM 98 POTASSIUM 88 5.3003',
... 'PAIR 345G 3 SODIUM 23 CARBON 14 1.664',
... 'PAIR 4IG5 4 LITHIUM 82 ARGON 99 2.5506',
... 'PAIR AB32 4 KRYPONITE 98 ARSENIC 99 2.3406'
... ]
>>> d = {}
>>> for line in lines:
... d.setdefault(line.split()[4], []).append(line)
...
>>> [(k, v) for k,v in d.items() if len(v) > 1 ]
[('82', ['PAIR 1MFK 1 URANIUM 82 HELIUM 112 3.6997', 'PAIR 4IG5 4 LITHIUM 82 ARGON 99 2.5506']), ('98', ['PAIR 2JGH 2 PLUTONIUM 98 POTASSIUM 88 5.3003', 'PAIR
B32 4 KRYPONITE 98 ARSENIC 99 2.3406'])]
</code></pre>