擅长:python、mysql、java
<p>这就是我在迭代<a href="https://docs.python.org/3/library/os.html?#os.walk" rel="nofollow noreferrer">^{<cd1>}</a>时通常排除目录的方式:</p>
<pre><code>for root, dirs, files in os.walk(drv):
dirs[:] = [d for d in dirs if d not in extf]
</code></pre>
<p>这里的要点是使用<a href="https://docs.python.org/3/tutorial/introduction.html#lists" rel="nofollow noreferrer">slice-assignment</a>(<code>dirs[:] = ...</code>)来更改<code>dirs</code>(将<code>dirs</code>重新分配给新创建的列表)。你知道吗</p>
<p>如果你想稍微加速,我建议把<code>extf</code>变成<code>set</code>:</p>
<pre><code>extf = set(('$RECYCLE.BIN','System Volume Information'))
</code></pre>