擅长:python、mysql、java
<p>使用<a href="http://docs.python.org/library/os.html#os.walk" rel="noreferrer">os.walk</a>在目录内容上递归迭代:</p>
<pre><code>import os
root_dir = '.'
for directory, subdirectories, files in os.walk(root_dir):
for file in files:
print os.path.join(directory, file)
</code></pre>
<p>这里的os.system和subprocess.call之间没有真正的区别——除非您必须处理命名奇怪的文件(文件名包括空格、引号等)。如果是这样的话,subprocess.call肯定更好,因为您不需要对文件名进行任何shell引用。当您需要接受任何有效的shell命令(例如从配置文件中的用户接收到的命令)时,os.system会更好。</p>