Python利用shutil模块实现文件夹的复制删除与裁剪

作者:渴望力量的哈士奇 时间:2023-12-19 04:16:23 

文件夹的复制

文件夹复制使用的函数

导入包与模块

`from shutil import copytree

使用方法:

copytree(来源目录, 目标目录)

代码示例如下:(目标已存在目录)

# coding:utf-8
from shutil import copytree

copytree('test03', 'test02')    # 需要注意的是,使用 "copytree()" 函数时,目标目录是不能存在的
                               # 否则会抛出异常 "FileExistsError: [Errno 17] File exists:'XXXXXX'"

运行结果如下:

Python利用shutil模块实现文件夹的复制删除与裁剪

代码示例如下:(目标目录未存在)

# coding:utf-8
from shutil import copytree

copytree('test03', 'test04')

运行结果如下:

Python利用shutil模块实现文件夹的复制删除与裁剪

文件夹的删除

文件夹删除使用的函数

导入包与模块

`from shutil import rmtree

使用方法:

rmtree(目标目录)

代码示例如下:(文件夹不存在)

# coding:utf-8
from shutil import copytree, rmtree

# copytree('test03', 'test04')
rmtree('test05')    # 需要注意的是,被删除的文件夹一定要存在,否则抛出异常 'FileNotFoundError'

运行结果如下:

Python利用shutil模块实现文件夹的复制删除与裁剪

代码示例如下:(文件夹存在)

# coding:utf-8
from shutil import copytree, rmtree

# copytree('test03', 'test04')
# rmtree('test05')    # 需要注意的是,被删除的文件夹一定要存在,否则抛出异常 'FileNotFoundError'
rmtree('test04')      # 被删除的文件夹是否有文件都可以被删除,只要目标文件夹存在

运行结果如下:

Python利用shutil模块实现文件夹的复制删除与裁剪

文件夹的裁剪(移动、重命名)

shutil包关于文件夹的裁剪所使用的函数,其实与文件的裁剪函数是一样的,都是使用的 move 函数:

导入包与模块

from shutil import move

使用方法:

move(来源目录, 目标目录)

代码示例如下:

# coding:utf-8
from shutil import copytree, rmtree, move

# copytree('test03', 'test04')
# rmtree('test05')    # 需要注意的是,被删除的文件夹一定要存在,否则抛出异常 'FileNotFoundError'
# rmtree('test04')      # 被删除的文件夹是否有文件都可以被删除,只要目标文件夹存在
move('test02', 'test01')    # 将 "test02" 文件夹,移动到 "test01" 文件夹下
move('test03', 'test04')    # 这里的目标目录不存在,所以 "来源目录的 'test03' 文件夹会被重命名为 'test04'"

运行结果如下:

Python利用shutil模块实现文件夹的复制删除与裁剪

来源:https://blog.csdn.net/weixin_42250835/article/details/124599092

标签:Python,shutil,文件夹,复制,删除,裁剪
0
投稿

猜你喜欢

  • 代码实例讲解python3的编码问题

    2022-08-19 10:59:15
  • 轻松创建nodejs服务器(1):一个简单nodejs服务器例子

    2024-05-11 10:14:21
  • python3中确保枚举值代码分析

    2023-05-23 17:47:31
  • python字符串中匹配数字的正则表达式

    2023-11-19 17:36:02
  • 详解Python字符串切片

    2021-09-10 05:10:43
  • MySQL与Oracle的语法区别详细对比

    2024-01-20 12:24:47
  • vue3.0+vue-router+element-plus初实践

    2024-05-21 10:17:49
  • 深入了解Python的多线程基础

    2021-12-07 18:50:50
  • 使用wxpy实现自动发送微信消息功能

    2022-04-01 21:16:06
  • Python使用淘宝API查询IP归属地功能分享

    2021-02-11 20:37:29
  • jmeter实现接口关联的两种方式(正则表达式提取器和json提取器)

    2022-06-14 19:31:27
  • JS关于 replace 取值、替换第几个匹配项问题小结

    2024-04-25 13:11:05
  • Django框架静态文件处理、中间件、上传文件操作实例详解

    2021-03-07 14:31:04
  • 从头学Python之编写可执行的.py文件

    2022-07-10 18:47:29
  • 基于JavaScript中标识符的命名规则介绍

    2024-04-19 10:48:01
  • mac安装scrapy并创建项目的实例讲解

    2021-05-17 21:21:05
  • 理解 javascript 中的函数表达式与函数声明

    2024-04-23 09:08:26
  • 数据库账号密码加密详解及实例

    2024-01-22 14:41:43
  • 解决TensorFlow程序无限制占用GPU的方法

    2021-11-22 13:13:44
  • MySQL修改数据库大小

    2011-01-13 20:00:00
  • asp之家 网络编程 m.aspxhome.com