擅长:python、mysql、java
<p>我改变了mstud的解决方案,以满足您的需求:</p>
<pre><code>import os;
for root, dirs, files in os.walk('.'):
# Split the root into its path parts
tmp = root.split(os.path.sep)
# If the lenth of the path is long enough to be your path AND
# The second to last part of the path is Dir4 AND
# The last part of the path is SubDir4.2 THEN
# Stop processing this pass.
if (len(tmp) > 2) and (tmp[-2] == 'Dir4') and (tmp[-1] != 'SubDir4.2'):
continue
# If we aren't in Dir4, print the file paths.
if tmp[-1] != 'Dir4':
for file in files:
print os.path.join(root, file)
</code></pre>
<p>简而言之,第一个“if”将跳过Dir4下不属于SubDir4.2的任何目录内容的打印。第二个“if”跳过Dir4目录内容的打印。在</p>