电脑随着使用时间的增加,我们在电脑中储存的文件变得越来越多。当这个时候你想要查找一个文件,但是又忘记了文件的位置在哪,想通过排序查找这个文件,又由于文件夹里面文件太多,根本找不到。
-
这里插播一条粉丝福利,如果你正在学习Python或者有计划学习Python,想要突破自我,对未来十分迷茫的,可以点击这里获取最新的Python学习资料和学习路线规划(免费分享,记得关注)
如果使用电脑自带的搜索,时间又很长。
那么在面对海量的存储文件,其实我们可以通过其实我们可以通过Python实现本机文件的检索,帮助大家找到遗忘在电脑某处的文件。
首先,介绍一下所需要的模块:os模块和re模块。
os模块:提供了多数操作系统的功能接口函数,当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在Python编程时,经常使用os模块与文件、目录打交道。
re模块:是用来匹配字符串非常强大的工具,利用正则表达式,我们可以快捷地从返回的页面内容提取出我们想要的内容。
接下来我们就从以下两种情况分别给大家展示代码。
根据文件名和所在盘符寻找文件
当我们知道文件所在的盘符(比如c盘、d盘),也知道文件全名时,我们可以通过以下代码寻找文件被放在哪一个文件夹下面。
import osdef search1(path, filename):
for root, dirs, files in os.walk(path):
if filename in dirs or filename in files:
root = str(root)
return os.path.join(root, filename)
else:
return False
position = input('请输入文件所在磁盘位置:')
name = input('请输入文件全名(含后缀):')print('正在查找中...')
path = search1(position + ':\\', name)print('目标文件具体位置为:', path)
在文件夹中检索文件
当我们知道文件具体路径,但是不记得具体文件名,我们可以用代码进入文件夹里进行检索。
这种适合当前文件夹存在很多文件的情况。
import os
result = []def search2(path=".", name=""):
for item in os.listdir(path):
item_path = os.path.join(path, item)
if os.path.isdir(item_path):
search(item_path, name)
elif os.path.isfile(item_path):
if name in item:
global result
result.append(item_path + ";")
print(item_path + ";")
while True:
path = input('请输入路径(输入0结束函数):')
if path == '0':
break
name = input('请输入关键字(输入0结束函数)')
if name == '0':
break
else:
search(path, name)
最后,我精心筹备了一份全面的Python学习大礼包,完全免费分享给每一位渴望成长、希望突破自我现状却略感迷茫的朋友。无论您是编程新手还是希望深化技能的开发者,都欢迎加入我们的学习之旅,共同交流进步!
🌟 学习大礼包包含内容:
Python全领域学习路线图:一目了然,指引您从基础到进阶,再到专业领域的每一步学习路径,明确各方向的核心知识点。
超百节Python精品视频课程:涵盖Python编程的必备基础知识、高效爬虫技术、以及深入的数据分析技能,让您技能全面升级。
实战案例集锦:精选超过100个实战项目案例,从理论到实践,让您在解决实际问题的过程中,深化理解,提升编程能力。
华为独家Python漫画教程:创新学习方式,以轻松幽默的漫画形式,让您随时随地,利用碎片时间也能高效学习Python。
互联网企业Python面试真题集:精选历年知名互联网企业面试真题,助您提前备战,面试准备更充分,职场晋升更顺利。
👉 立即领取方式:只需【点击这里】,即刻解锁您的Python学习新篇章!让我们携手并进,在编程的海洋里探索无限可能