ITPub博客

首页 > 数据库 > 数据库开发技术 > 使用Python批量实现文件夹及其子文件夹下指定文件的复制

使用Python批量实现文件夹及其子文件夹下指定文件的复制

原创 数据库开发技术 作者:Python进阶者 时间:2022-12-22 15:46:50 0 删除 编辑
点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

今

日

鸡

汤

但愿人长久,千里共婵娟。

大家好,我是Python进阶者。

一、前言

前几天在帮助粉丝解决问题的时候,遇到一个简单的小需求,这里拿出来跟大家一起分享,后面再次遇到的时候,可以从这里得到灵感。

二、需求澄清

粉丝的问题来源于实际的需求,她现在想要复制一个文件夹下机器子文件夹下的指定文件,如果是正常操作的话,肯定是挨个点击进去文件夹和子文件夹,然后找到对应文件,然后复制粘贴出来到指定的文件夹。这样做肯定是可以,但是当有上百个文件夹需要复制呢?肯定就需要消耗大量的时间和精力了。

现在她想使用Python批量实现文件夹及其子文件夹下指定文件的复制。比方说她想要这个文件夹下及其子文件下所有带【需求单】的文件。

三、实现过程

这里给大家提供一个可行的代码,思路也很简单,直接遍历文件夹和子文件夹,然后加文件判断,之后符合条件的,直接使用shutil库进行复制即可,代码如下:

import shutil
import os


def copy_file(path):
    # (root,dirs,files)分别为:遍历的文件夹,遍历的文件夹下的所有文件夹,遍历的文件夹下的所有文件
    for root, dirs, files in os.walk(path):
        for file in files:
            if "需求单" in file:
                shutil.copyfile(root + '\\' + file, target_path + '\\' + file)
                print(root + '\\' + file + ' 复制成功-> ' + target_path)
        for dir_in in dirs:
            copy_file(dir_in)


if __name__ == '__main__':
    # 文件夹路径
    source_path = r'C:\Users\pdcfi\Desktop\test\需求单'
    # 输出路径
    target_path = r'C:\Users\pdcfi\Desktop\test\res'
    copy_file(source_path)

代码运行之后,就可以把某一文件夹下及其子文件夹下的指定文件全部复制出来,再也不用挨个去手动复制了,使用Python事半功倍!

三、总结

大家好,我是皮皮。这篇文章主要盘点一个Python自动化办公的实用案例,这个案例可以适用于实际工作中文件处理,大家也可以稍微改进下,用于自己的实际工作中去,举一反三。

大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting),应粉丝要求,我创建了一些高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群!

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群】

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~

原文作者:Python爬虫与数据挖掘;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2024-12-18

  • 博文量
    913
  • 访问量
    379350