Python如何查找特定名称文件

 更新时间:2023年08月22日 15:01:59   作者:威斯登  
这篇文章主要介绍了Python如何查找特定名称文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python查找特定名称文件

问题描述

遍历“Day1-homework”目录下文件;

找到文件名包含“2020”的文件;

将文件名保存到数组result中;

按照序号、文件名分行打印输出。

result = []
i = 0
for root,dirs,files in os.walk('Day01-homework/'):   
    #指定目录,返回一个三元组(起始路径,起始路径下的文件夹名,起始路径下的文件名),其中第一个是string,后两个是list
    for file_name in files:
        if "2020" in file_name:                #查找2020字符串是否在文件名里,使用find好像不行         
            result = [os.path.join(root,file_name).replace('\\','/')]        
            #join进行字符串拼接,replace将\用/替代,其中'\\'是转义字符
            i += 1
            j = [i]
            print(j + result)

其中os.walk()方法是从当前python文件的目录里查找某一文件。

结果如下:

[1, 'Day01-homework/18/182020.docx']
[2, 'Day01-homework/26/26/new2020.txt']
[3, 'Day01-homework/4/22/04:22:2020.txt']

python查找指定格式文件并复制到指定目录

1、需求  

在linux 系统下,会对一些应用代码进行编译,生成".a"、".so"一类的文件到不同的目录和文件夹下,最后在调用时需要把他们放一个目录中,如果手动用指令实现非常不方便,现通过python来已经快速实现。

小记:

  • .a文件,是LINUX系统中的静态链接库文件。
  • .so文件,  是LINUX系统中的动态链接库,名字形式多为 “libxxx.so” 后缀名为 “.so”

2、实现    

以下是通过 查找某个文件夹下".h"文件的例子,找到后加入到list中,再通过【复制】或【剪切】函数到指定目录,代码如下:

import os, shutil
file_list = []
# 搜索函数--可搜索指定目录上的文件夹下的文件。
def search_file(root, target):
    for file in os.listdir(root):
        path = root
        try:
            path = path + os.sep + file
            if os.path.isdir(path):
                search_file(path, target)
            else:
                if file.split('.')[-1] == target:
                    file_list.append(path)
        except PermissionError as e:
            print(e)
    return file_list
# 批量移动函数
def move_file(file_list, dest):
    for file in file_list:
        try:
            shutil.move(file, dest)
        except shutil.Error as e:
            print(e)
# 批量复制函数
def move_file(file_list, dest):
    for file in file_list:
        try:
            shutil.opy(file, dest)
        except shutil.Error as e:
            print(e)
# 写入目标参数root,
def main():
    # ---- windows
    # root = "D:\\pic1"
    # target = "png"
    # dest_dir = "D:\\ABC\\pic2"
    # -- linux --
    root = "/home/dsoftbus/cpp/pycopy"
    target = "h"
    dest_dir = "/home/dsoftbus/copy_file_h"
    result = search_file(root, target)
    print(result)
    # 剪切文件
    # move_file(result, dest_dir)
    # 复制文件
    copy_file(result,dest_dir)
    print("复制成功!!")
if __name__ == '__main__':
    main()

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python实现多路视频多窗口播放功能

    Python实现多路视频多窗口播放功能

    这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下
    2025-02-02
  • Python调用系统命令os.system()和os.popen()的实现

    Python调用系统命令os.system()和os.popen()的实现

    这篇文章主要介绍了Python调用系统命令os.system()和os.popen()的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • python随机数分布random均匀分布实例

    python随机数分布random均匀分布实例

    今天小编就为大家分享一篇python随机数分布random均匀分布实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • python中parser.add_argument()用法实例(命令行选项、参数和子命令解析器)

    python中parser.add_argument()用法实例(命令行选项、参数和子命令解析器)

    最近开始读论文代码了,遇到一个名字叫option的py文件,打开一看清一色的parser.add_argument(),看得是一脸懵逼,这篇文章主要给大家介绍了关于python中parser.add_argument()用法的相关资料,需要的朋友可以参考下
    2022-03-03
  • 一文详解Python中的行为验证码验证功能

    一文详解Python中的行为验证码验证功能

    最近在开发行为验证码,经常触及到关于验证类型的相关内容。但使用起来不太熟练,所以本文就来总结一下对行为验证码验证类型的理解
    2023-03-03
  • Python基于百度云文字识别API

    Python基于百度云文字识别API

    这篇文章主要介绍了Python基于百度云文字识别API,用Python实现最简单的文字识别,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • python中字典取最大值的应用方式

    python中字典取最大值的应用方式

    这篇文章主要介绍了python中字典取最大值的应用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • python selenium实现登录豆瓣示例详解

    python selenium实现登录豆瓣示例详解

    大家好,本篇文章主要讲的是python selenium登录豆瓣示例详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • python动态性强类型用法实例

    python动态性强类型用法实例

    这篇文章主要介绍了python动态性强类型用法,对比C#实例分析了python动态性强类型的使用方法,需要的朋友可以参考下
    2015-05-05
  • Python中sys模块常用方法与变量实例探究

    Python中sys模块常用方法与变量实例探究

    sys 模块是 Python 标准库中的一个核心模块,提供了与解释器进行交互的功能,了解 sys 模块的方法和变量对于更有效地管理和调试 Python 程序至关重要,本文将深入探讨 sys 模块的常用方法和变量,通过详细的示例代码,帮助大家更全面地了解并灵活运用这一关键模块
    2024-01-01

最新评论