擅长:python、mysql、java
<p>这样做有效:</p>
<pre><code>key = 'NUMBER'
seen = set()
res = []
for entry in data:
if not entry[key] in seen:
res.append(entry)
seen.add(entry[key])
</code></pre>
<p>结果:</p>
<pre><code>>>> res
[{'AGE': 23, 'NAME': 'John', 'NUMBER': 345},
{'AGE': 23, 'NAME': 'Michel', 'NUMBER': 346},
{'AGE': 23, 'NAME': 'RAHUL', 'NUMBER': 347},
{'AGE': 23, 'NAME': 'Wincent', 'NUMBER': 342}]
</code></pre>
<p>使用<code>set</code>保存已经看到的值。对于大型列表,这比使用<code>val in seen_list</code>之类的列表要高效得多。你知道吗</p>