用Python打造一款文件搜索工具,所有功能自己定义

用Python打造一款文件搜索工具,所有功能自己定义! 一、前言 大家好,又到了Python办公自动化系列。 在日常的办公中,从一堆不同格式的文件(夹)中找到我们需要的文件应该是最频繁使用的操作,不论你是凭着记忆去找还是借助软件,本文将分享 「如何使用Python制作一款简易的文件搜索工具」 本文将基于几个常用的需求来讲解使用Python来制作搜索文件脚本的主要方法 二、扫描路径内的内容 有些时候我们会希望在当前文件夹的成百上千个文件中快速找到需要的文件,如果这个文件夹又包括很多个子文件夹,并不需要程序进去查找而无端耗费资源。这就是典型的「扫描一层搜 阅读详情

前言

在日常的办公中,我们经常会从一堆不同格式的文件(夹)中搜索特定的文件,可能你是凭着记忆去找或是借助软件,但你有想过如何用Python实现吗?本文将基于几个常见的搜索操作讲解。

扫描路径内的内容

有些时候我们会希望在当前文件夹的成百上千个文件中快速找到需要的文件,如果这个文件夹又包括很多个子文件夹,并不需要程序进去查找而无端耗费资源。这就是典型的"扫描一层搜索"

1. 基于 os.scandir()

需求说明

输出C:\Program Files (x86)路径下名字包含“Windows”的文件夹名称,并统计个数

步骤分析

这是一个非遍历的需求,只需要在目的文件夹内扫描一圈判断即可。用到的方法是os.scandir(),使用如下:

上面代码最后输出的是给定路径下各内容的名字、绝对路径,并判断其是否是文件夹

需要注意的是os.scandir()只在路径下一级扫描,需求实现的代码如下(代码逻辑很简单,可以自己做相应调整):

2. 基于 os.listdir()

需求说明

输出C:\Program Files (x86)路径下所有可执行文件 (即后缀为 .exe)

步骤分析

依然是非遍历的需求,这里使用os.listdir(),它比os.scandir()简单一些,可直接调用输出名称而非路径。后缀名可以用字符串的切片来判断,但难免失去灵活性。此时建议用字符串方法string.endswith()来判断名称的结尾是否是.exe,代码如下:

遍历文件夹搜索文件

更多时候我们希望给定一个大概的路径,在这个路径下的所有文件夹里一层一层找,找到特定文件或者符合要求的文件,这里需要遍历文件,有两种主要的方法:

1. 基于 os.walk()

os.walk 遍历后产生三个参数:当前文件夹路径, 包含文件夹名称  [列表形式], 包含文件名称[列表形式]

可以用如下代码完成简单遍历:

需求说明

遍历C:\Program Files (x86)找出所有新版Excel文件 (即后缀为.xlsx)

步骤分析

只要理解了os.walk()的工作模式,用endswith()判断后缀即可。最后如果需要获得绝对路径可以把当前文件夹路径和文件名拼接,简单一点用 + 或者字符串格式化,也可以用os模块内的方法

2. 基于非 os 方法:glob

glob在之前的推文也反复提到遍历框架:

**/*的使用表示用通配符指代给定路径下的任何一层,recursive参数允许遍历搜索 由于glob可以使用"通配符",大大拓宽了灵活程度,这里利用 glob 也来完成上面的需求

需求说明

遍历C:\Program Files (x86)找出所有新版Excel文件(即后缀为.xlsx)

可以看到非常简单,在原有代码基础上加上后缀名就能够完成特定类型文件的搜索。如果需要搜索"特定文件",如遍历C:\Program Files (x86)找到文件practice.txt,"只需要后一个*改成具体名称就行"

写在最后

通过本文的Python自动化脚本制作过程,我们可以再次体会Python办公自动化的强大!如果对自动化代码和数据感兴趣,可查看:

源码获取:源码

当然本文只是基于几个简单的需求来讲解使用Python来制作搜索文件脚本的主要方法,接下来你可以结合之前的自动化案例或以根据自己的需求添加一些其他的规则或增加新的功能,打造出一款属于你的软件!

最后还是希望大家能够理解Python办公自动化的一个核心就是"批量操作-解放双手",让复杂的工作自动化。

 

Python脚本程序实现搜索文本文件内容 用Python实现的搜索本地文本文件内容的小程序。从而学习Python I/O方面的知识。 1.程序入参为本地文件系统路径。 2.在配置文件中searchkeywords.txt中输入要搜索的任意多个关键字 3.在配置文件中excludekeywords.txt中输入在searchkeywords.txt中要排除搜索的关键字 4.程序执行完成后,即可在result.log日志文件中,查看搜索结果。即每个关键在哪些文件中存在。并给出每个文件的具体路径。 立即下载

相关推荐

文件内容搜索工具

可以在短时间内查找指定目录下包含特定字符串的文件

文件搜索工具(Python实现)

文件搜索工具能够基于名称快速定位匹配的文件和文件夹位置,比如Everything就是Windows上的一款文件搜索工具:下面我们实现一个简单的文件搜索工具。文件搜索的步骤分为两步:需要注意的是,在搜索时并不是只在用户指定的那一级目录下进行搜索,如果该目录下存在子目录,那么还需要在该子目录下进行搜索。例如,我们在D盘下创建了一个名为TestDir的目录,该目录中的文件布局如下:当我们指定在TestDir目录下以test为关键字进行查找时,我们希望的是找出TestDir目录及其子目录下,所有包含test关键字的

2021dragon的博客 3816

「Debug R」在从名字空间‘XVector’中出口方法时发现了不是S4通用的函数‘parallelSlotNames’...

每当R语言版本更新,Bioconductor的版本随之更替的时候,总会有一些神奇的报错会出现,比如说下面这种。 Error: package or namespace load failed for ‘GenomicRanges’: 在从名字空间‘XVector’中出口方法时发现了不是S4通用的函数‘parallelSlotNames’ 如果读中文读不懂,我们可以把它翻译成英文。 packa...

xuzhougeng blog 2003

用python打造一款文件搜索工具,所有功能自己定义!

作者:陈熹 来源:早起Python 大家好,又到了python办公自动化系列。在日常的办公中,我们经常会从一堆不同格式的文件(夹)中搜索特定的文件,可能你是凭着记忆去找或是借助软件,但你有想过如何用python实现吗? 扫描路径内的内容 有些时候我们会希望在当前文件夹的成百上千个文件中快速找到需要的文件,如果这个文件夹又包括很多个子文件夹,并不需要程序进去查找而无端耗费资源。这就是典型的「扫描一层搜索」 1. 基于 os.scandir() 需求说明 ❝ 输出C:\Program F...

CDA数据分析师 327

嵌入式开发语言-C语言编程

C语言编程概述环境在Windows上构建C语言的环境安装在Mac上构建C语言的环境安装 概述 “C语言”被称为适合嵌入式系统开发的编程语言之一。 C语言在一般的编程中也是熟悉的开发语言,但实际上,如果试着使用C语言制作微型计算机的控制程序等,就必须使用与“普通的C程序”不同的使用方法。 作为一般的C语言的学习方法,使用“printf”“scanf”等标准函数的程序开发是固定的,但这些都是以UNIX和Windows等环境上的应用程序开发为前提的。 对此,没有显示器和键盘的嵌入式系统的微型计算机控制程序,该如何

编程老王 7981

ESP8266+Mixly+MIXIO物联网实战:用色盘控制WS2812 RGB灯(附完整代码)

本文详细介绍了如何利用ESP8266微控制器、Mixly图形化编程工具与MIXIO物联网平台,快速构建一个可通过网页色盘远程控制WS2812 RGB智能灯带的实战项目。内容涵盖硬件接线、平台配置、代码编写与调试全流程,旨在帮助物联网爱好者与初学者轻松实现创意灯光应用,掌握智能硬件开发的核心技能。

gin88的博客 262

os 模块 查找文件夹下最新的文件

import os def new_file(path): lists = os.listdir(path) lists.sort(key= lambda f: os.path.getmtime(path + '\\' + f)) file_path = os.path.join(path, lists[-1]) return file_path if __...

我是张先生 580

华为OD机试 - 素数之积 - 数学问题(Java 2025 A卷 100分)

每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天优快云在线答疑。

学Java,找哪吒 2134

python 通配符_用Python打造一款文件搜索工具,所有功能自己定义

前言在日常的办公中,我们经常会从一堆不同格式的文件(夹)中搜索特定的文件,可能你是凭着记忆去找或是借助软件,但你有想过如何用Python实现吗?本文将基于几个常见的搜索操作讲解。点击此处,获取海量Python学习资料!扫描路径内的内容有些时候我们会希望在当前文件夹的成百上千个文件中快速找到需要的文件,如果这个文件夹又包括很多个子文件夹,并不需要程序进去查找而无端耗费资源。这就是典型的"扫描一层搜索...

weixin_39841572的博客 400

n8n AI高效工作流自动化 部署使用教程

摘要: n8n是一款开源可视化工作流自动化工具,结合AI能力可高效解决重复性任务。文章详细介绍了从Docker部署到实战应用的完整流程:1)通过Docker Compose自托管n8n,确保数据可控;2)以AI客服日报机器人为例,演示如何串联工单系统、ChatGPT和邮件通知,实现定时自动化;3)进阶搭建交互式AI助手,利用ToolsAgent节点调用业务API;4)整合向量数据库构建RAG知识库问答。关键建议包括:拆分复杂工作流、严格管理凭据、区分开发与生产环境,并建议从高频刚性需求(如日报生成)切入,逐

专注AI大模型,软件混淆,授权 267

LLaMA Factory添加新模型template的实战解析

本文主要介绍了LLaMA Factory添加新模型template的实战解析,希望对使用大语言模型的同学们有所帮助。 文章目录 1. 前言 2. 实战解析 2.1 检查代码 2.2 修改代码

herosunly的博客 19万+

python 对 文件内容 搜索_python实现搜索文本文件内容脚本

本文介绍用python实现的搜索本地文本文件内容的小程序。从而学习Python I/O方面的知识。代码如下:import os#根据文件扩展名判断文件类型def endWith(s,*endstring):array = map(s.endswith,endstring)if True in array:return Trueelse:return False#将全部已搜索到的关键字列表中的内容保...

weixin_32597695的博客 2446

STM32G0/G4电机控制中三角函数与浮点运算优化实战

三角函数(sin/cos)和浮点运算是电机矢量控制(FOC)的核心基础,直接影响Clark/Park变换、SVPWM及观测器的实时性与精度。在资源受限的MCU上,标准math.h库因无硬件FPU支持而引发严重时序抖动,导致电流环延迟、转矩脉动增大甚至系统复位。通过硬件加速(如STM32G4的CORDIC协处理器)或定制化定点算法(如STM32G0的查表+线性插值),可将sin/cos计算从数十微秒压缩至1–3 μs量级,提升30倍以上效率。该方案广泛适用于BLDC/PMSM驱动、伺服控制及高动态响应嵌入式运

weixin_35751412的博客 112

python 通配符_用Python打造一款定义功能文件搜索工具

一、前言大家好,又到了Python办公自动化系列。在日常的办公中,我们经常会从一堆不同格式的文件(夹)中搜索特定的文件,可能你是凭着记忆去找或是借助软件,但你有想过如何用Python实现吗?本文将基于几个常见的搜索操作讲解?「如何使用Python制作一款简易的文件搜索工具」二、扫描路径内的内容有些时候我们会希望在当前文件夹的成百上千个文件中快速找到需要的文件,如果这个文件夹又包括很多个子...

weixin_39722965的博客 132

当SLAM遇上FPGA:打造一个会“硬件加速”的激光雷达SLAM系统

点云数据的运动畸变校正特征点提取与匹配、以及ICP迭代最近点配准。在传统方案中,我们通常用ARM核完成所有计算。但点云配准中的最近邻搜索(KD-Tree)需要大量分支判断,CPU处理起来效率很低;而ICP中的矩阵分解(SVD)虽然计算量大,但非常适合并行化。ZYNQ的特殊之处在于它把ARM(PS端)和FPGA(PL端)集成在同一颗芯片上。ARM擅长跑操作系统、处理复杂逻辑和调度,FPGA擅长做高吞吐量的并行计算。两者之间通过AXI总线高速互联,数据交换延迟只有几十个时钟周期。

QQ_778132974的博客 376

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

上一篇: 全网最火的钉子绕线图制作教程,情侣礼物!
下一篇: 用 Python 实现朋友圈中的九宫格图片,一秒搞定!
pythonlaodi
博客等级 码龄6年 286粉丝 244原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值