欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python实现快速查找文件

程序员文章站 2022-06-22 08:41:23
在使用计算机软件的过程中,笔者经常会忘记之前下载的软件注册表之类奇奇怪怪的东西保存在什么位置了,又忘记了创建桌面快捷方式,这时该怎么办呢?首先,我们看看常见的Windows+R命令,比如我想搜索Adobe,我们看一下搜索结果:由于我们不知道具体的文件名,因此无法通过该方式找到需要的文件。那在文件资源管理器里面查询怎么样呢?我们直接在C盘中查询,看一下结果:这样确实可以查到一大串的结果,但是实在是好慢啊,对于笔者这样没有耐心的人来说实在是一种折磨。那么,我们可不可以写一个程序实现自动查询呢?答案...

在使用计算机软件的过程中,笔者经常会忘记之前下载的软件注册表之类奇奇怪怪的东西保存在什么位置了,又忘记了创建桌面快捷方式,这时该怎么办呢?

首先,我们看看常见的Windows+R命令,比如我想搜索Adobe,我们看一下搜索结果:
Python实现快速查找文件
由于我们不知道具体的文件名,因此无法通过该方式找到需要的文件。

那在文件资源管理器里面查询怎么样呢?我们直接在C盘中查询,看一下结果:
Python实现快速查找文件
这样确实可以查到一大串的结果,但是实在是好慢啊,对于笔者这样没有耐心的人来说实在是一种折磨。那么,我们可不可以写一个程序实现自动查询呢?

答案当然是肯定的。

代码如下:

import os

path = 'C:'
filename = 'Adobe'
result = []

# 将查询结果直接输出
def find_file():
    i = 0
    for root, lists, files in os.walk(path):
        for file in files:
            if filename in file:
                i = i + 1
                write = os.path.join(root, file)
                print('%d %s' % (i, write))
                result.append(write)

# 将查询结果保存在文本文档中
def find_file_and_putin_txt():
    i = 0
    open('E:\Python\\find_file.txt', mode='w').close()
    for root, lists, files in os.walk(path):
        for file in files:
            if filename in file:
                i = i + 1
                write = os.path.join(root, file)

                file_txt = open('C:\User\\find_file.txt', mode='a+')
                file_txt.write('%d %s \n' % (i, write))
                result.append(write)


if __name__ == '__main__':
    find_file()
    find_file_and_putin_txt()

我们运行这个程序,很快,就可以找到所有名称包含Adobe的文件了。
Python实现快速查找文件
Python实现快速查找文件

本文地址:https://blog.csdn.net/weixin_46695826/article/details/107229114