我需要编写一个从给定目录传递文件系统的程序,并打印所有子文件夹和文件名。
答案 0 :(得分:5)
os.walk()
是你的朋友。
答案 1 :(得分:1)
这有效:
#!/usr/bin/env python
import os
def walklevel(some_dir, level):
some_dir = some_dir.rstrip(os.path.sep)
num_sep = some_dir.count(os.path.sep)
for root, dirs, files in os.walk(some_dir):
yield root, dirs, files
num_sep_this = root.count(os.path.sep)
if num_sep + level <= num_sep_this:
del dirs[:]
for root,dirs,files in walklevel('.',3):
for dir in dirs:
tabs='\t'*root.count(os.path.sep)
print tabs,dir
答案 2 :(得分:0)
这个Python示例可以帮助您解决问题。
for ROOT,DIR,FILES in os.walk("/mypath"):
for file in FILES:
print file
print DIR
rc = performOtherPythonTasks()