擅长:python、mysql、java
<p>如果<code>class_words_merged</code>很大,首先将其转换为一个集合会加快速度:</p>
<pre><code>>>> to_remove = set(class_words_merged)
>>> [word for word in all_words_merged if word not in to_remove]
['ego', 'tuus', 'casa', 'et', 'cutullus', 'et', 'leviosa']
</code></pre>
<h3>一些计时</h3>
<p>100倍大:</p>
<pre><code>large_class_words_merged = class_words_merged * 100
</code></pre>
<p>先创建为集合:</p>
<pre><code>%%timeit
to_remove = set(large_class_words_merged)
[word for word in all_words_merged if word not in to_remove]
1000 loops, best of 3: 493 µs per loop
</code></pre>
<p>反复浏览清单:</p>
<pre><code>%timeit [word for word in all_words_merged if word not in large_class_words_merged]
100 loops, best of 3: 3.18 ms per loop
</code></pre>
<p>提示:</p>
<p><code>%timeit</code>和<code>%%imeit</code>是我在Jupyter笔记本中使用的IPython魔术命令。你知道吗</p>