擅长:python、mysql、java
<pre><code>ordered = [item for item in ordered if item in unordered]
</code></pre>
<p>此方法使用Python的列表理解功能在旧列表的基础上创建一个新列表。在</p>
<p>对于大量数据,如人们在评论中所建议的那样,首先将无序的<em>列表变成一个集合,会在性能上产生巨大的差异,例如:</p>
^{pr2}$
<hr/>
<h3>基准测试!</h3>
<blockquote>
<p><em>ordered</em>: 5000 items, <em>unordered</em>: 1000 items<br/>
0.09561s without set<br/>
0.00042s with set</p>
</blockquote>
<p>对于10/2的项目,时间几乎相同,所以无论数据大小如何,最好始终使用集合。在</p>