您的位置:首页 > 编程语言 > Python开发

在目录及其子目录下寻找匹配的文件的python实现

2015-07-11 15:17 639 查看

目录及其子目录下寻找匹配的文件的python实现

python中在目录及其子目录下寻找匹配的文件,这是一个小练习

题目如下:

(1)编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径

代码如下:

#寻找指定目录下(包含子目录)中的文件名含有指定字符串的文件,并打印出其相对路径
#coding:utf-8
import os
def my_find(s,root='.'):
    dirs=[]#用来保存目录
    matchs=[]#用来保存匹配字符串的文件
    for currentName in os.listdir(root):
        addRootName=os.path.join(root,currentName)
        if os.path.isdir(addRootName):
            dirs.append(addRootName)
        elif os.path.isfile(addRootName) and s in addRootName:
            matchs.append(addRootName)
    for match in matchs:
        print(match)

    for dir in dirs:
        my_find(s,dir)

my_find('test','.')


上面是以相对路径输入符合条件的文件。

如果我们想以绝对路径来输出符合条件的文件。则只需要将程序中的

addRootName=os.path.join(root,currentName)


换成下面这条语句即可

addRootName=os.path.join(os.path.abspath(root),currentName)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: