博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
测开之路五十四:实现文件查找
阅读量:5287 次
发布时间:2019-06-14

本文共 1376 字,大约阅读时间需要 4 分钟。

 

设计一个函数,列出目录及子目录下所有文件,可以过滤满足特定要求的文件,也可以只展示特定要求的文件。

def list_files(path, include=[], exclude=[]):pass

类似于unittest里面的查找case操作

 

 

import os def get_files(path, include=[], exclude=[]):     """     os.listdir():只列出当前文件夹下的文件     os.walk():递归列出当前文件夹下的所有文件夹下的文件     path是要列出文件的路径。     include:白名单规则     exclude:黑名单规则     根据代码规则,黑名单机制优先于白名单机制执行。     """     files = []     # 如果路径不存在,则直接返回空列表。     if not os.path.exists(path):         return files     # 如果路径是文件,则直接返回文件。     if os.path.isfile(path):         # 这里处理exclude规则--黑名单机制。不为空则遍历每一个规则去匹配         if exclude:             for rule in exclude:                 if path.find(rule) != -1:                     return files         # 这里处理include规则--白名单机制。         if include:             for rule in include:                 if path.find(rule) != -1:                     files.append(path)         # 既不在白名单也不再黑名单里面         else:             files.append(path)         return files     # 如果路径是目录,则列出目录内容,递归处理。     if os.path.isdir(path):         results = os.listdir(path)         for result in results:             # 将原路径与路径下文件名拼接成新路径。             new_path = "/".join([path, result])             files.extend(get_files(new_path, include, exclude))     return files if __name__ == '__main__':     path = 'D:/PycharmProjects/test/1'     print(get_files(path, exclude=['__init__.py', ]))

 

转载于:https://www.cnblogs.com/zhongyehai/p/11048199.html

你可能感兴趣的文章
php做的一个简易爬虫
查看>>
x的x次幂的值为10,求x的近似值
查看>>
jquery获取html元素的绝对位置和相对位置的方法
查看>>
ios中webservice报文的拼接
查看>>
Power BI 报告的评论服务支持移动设备
查看>>
ACdream 1068
查看>>
HDU 2665 Kth number
查看>>
记叙在人生路上对你影响最大的三位老师
查看>>
002.大数据第二天
查看>>
python装饰器
查看>>
树上的路径
查看>>
问题总结
查看>>
软件随笔
查看>>
Linux下SVN自动更新web [转]
查看>>
Openstack api 学习文档 & restclient使用文档
查看>>
poj100纪念
查看>>
NetWork——关于TCP协议的三次握手和四次挥手
查看>>
An easy problem
查看>>
MauiMETA工具的使用(一)
查看>>
LeetCode: Anagrams 解题报告
查看>>