python 递归打印指定路径下的所有文件

输入一个路径,显示文件下所有的子目录。

import os

def list_all_path(path):
    if os.path.isfile(path):
        print(path);
        global count;
        count+=1
        print(count);
    else:
        if os.path.isdir(path):
            for sub_path in os.listdir(path):
                list_all_path(path+"/"+sub_path);
                #这个路径很关键,要绝对路径,否则没法递归
count=0;
my_dir=input("输入一个路径:");
list_all_path(my_dir);

 count是统计数目的

运行效果如下:

输入一个路径:d:/workspaces
d:/workspaces/MyEclipse 8.5/.metadata/.bak_0.log
1
d:/workspaces/MyEclipse 8.5/.metadata/.lock
2
d:/workspaces/MyEclipse 8.5/.metadata/.log

 有了这个程序后,再加个判断语句,就可以筛选出文件名中含有某个关键字的所有文件,效果就类似windows下的全局搜索。后续继续更新。

 

你可能感兴趣的:(python,递归,文件,目录)