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

用python实现一个文件搜索工具

程序员文章站 2022-03-04 12:04:33
目录前言步骤操作如下:完整代码:总结前言经常使用电脑自带的搜索很慢很卡,今天做一个搜索工具,可以搜索到隐藏的文件,而且速度也很快步骤导入模块import os检测一下输入的路径最后一位有没有/,如果没...

前言

经常使用电脑自带的搜索很慢很卡,今天做一个搜索工具,可以搜索到隐藏的文件,而且速度也很快

步骤

导入模块

import os

检测一下输入的路径最后一位有没有/,如果没有则添加,是为了方便操作

if dir.endswith('/') == true:
    pass
else:
    dir = dir+'/'

用来循环检测文件,进入文件目录然后检测,再次进入检测,循环往复

def iterbrowse(path):
    for home, dirs, files in os.walk(path):
        for filename in files:
            yield os.path.join(home, filename)

用来将路径的\\改为/,也是为了方便软件识别

name = fullname.replace("\\", "/")  # 替换

检测你要查找的文件名称是否存在,如果存在则打印出来,列,查找text,则会打印出关于text的所有文件,包含:textwet.*,sdftext.*,*.text

os.path.basename(name)  用来提取文件名不含路径,

inpu in os.path.basename(name)   用来检测os.path.basename(name)里是否含有inpu(值)

os.path.isfile(name)    用于检测文件是否存在

       if (inpu in os.path.basename(name)) == true:
        if os.path.isfile(name) == true:
            print(name)

操作如下:

输入路径,输入要搜索的名称,可以看到已经搜索出来了

用python实现一个文件搜索工具

完整代码:

import os
 
dir = input('输入路径:')
inpu = input('输入关键字:')
 
if dir.endswith('/') == true:
    pass
else:
    dir = dir+'/'
 
def iterbrowse(path):
    for home, dirs, files in os.walk(path):
        for filename in files:
            yield os.path.join(home, filename)
 
 
for fullname in iterbrowse(dir):
    name = fullname.replace("\\", "/")  # 替换
    if (inpu in os.path.basename(name)) == true:
        if os.path.isfile(name) == true:
            print(name)

总结

到此这篇关于用python实现一个搜索工具的文章就介绍到这了,更多相关python搜索工具内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!