Rumah >pembangunan bahagian belakang >Tutorial Python >python 递归打印指定路径下的所有文件

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

巴扎黑
巴扎黑asal
2016-12-07 11:33:211301semak imbas

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

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下的全局搜索。后续继续更新。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:用python语言实现的最短路spfa算法Artikel seterusnya:python-发邮件