python shutil模块常用操作

高级的 文件、文件夹、压缩包 处理模块

1.将文件内容拷贝至另一个文件中

shutil.copyfileobj(src, dist, length=16*1024),默认长度为16 * 1024,默认返回None

shutil.copyfileobj(open('test3.py', 'r'), open('test3/test2.py','w'))

2.拷贝文件

shutil.copyfile(src, dist),dist目标文件无需存在, 返回复制后的文件名称,此处为"test4.py",不拷贝权限、状态信息,只拷贝文本

shutil.copyfile("test3.py", "test4.py")

3.仅拷贝权限,内容、组、用户不变

目标文件必须存在,不拷贝内容、状态

shutil.copymode("test3.py","test4.py")

4.仅拷贝状态信息及读写权限

状态信息包括:mode bits, atime, mtime, flags;目标文件必须存在

shutil.copystat("test3.py","test4.py")

5.拷贝文件和权限

包括文件内容和文件的读写权限

shutil.copy("test3.py", "test5.py")

6.拷贝文件和状态信息

包含文件内容及状态信息:mode bits, atime, mtime, flags、读写权限

shutil.copy2("test3.py", "test6.py")

7.递归拷贝文件(从一个文件夹中拷贝到另一个文件夹)

递归拷贝文件需要目标文件夹不存在,ignore为忽略的文件或文件夹

shutil.copytree("test3","test4",ignore=shutil.ignore_patterns("*.py"))

8.递归删除文件夹

会删除全部文件及文件夹

shutil.rmtree("test4")

9.递归移动文件(相当于重命名)

shutil.move("test3","test4")

10.创建压缩包并返回文件的路径

shutil.make_archive(base_name, format, root_dir), base_name:压缩包的名称,format一般为"zip", "tar", "bztar" or "gztar",

root_dir:需要压缩的路径

shutil.make_archive("test", "zip", "test4")

11.解压缩压缩包

shutil.unpack_archive(base_name, extract_dir, format);base_name:压缩包路径;extract_dir:解压缩的路径;

format一般为"zip", "tar", "bztar" or "gztar"

shutil.unpack_archive("test.zip", "test5", "zip")

12.shutil压缩及解压缩原理

调用 ZipFile 和 TarFile 两个模块来进行的

python shutil相关操作的更多相关文章

  1. python文件相关操作

    Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中 ...

  2. python subprocess相关操作

    python subprocess常用操作 1.subprocess模块的常用函数 函数 描述 subprocess.run() Python 3.5中新增的函数.执行指定的命令,等待命令执行完成后返 ...

  3. python 集合相关操作

    集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...

  4. python集合相关操作

    集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...

  5. python PIL相关操作

    项目中需要用python生成二维码,这里记录一下相关PIL相关操作. RGBA问题: 需要将图片A粘贴到图片B上,之前没有注意透明度问题,A的背景是透明的,粘贴到B上后,A的周围是黑的.后来才发现是P ...

  6. Python容器相关操作

    (集合与字典除外)的容器相关操作 (1)容器的拼接 >>> 'abc' + 'def' 'abcdef' (2)容器的重复 >>> (1, 2) * 3 (1, 2 ...

  7. python selenium 相关操作

    selenium : 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Fi ...

  8. python 系统相关操作

    1.文件 open()代开文件或者创建文件 fout=open('oops.txt','wt') print('Oops, I created a file.',file=fout) fout.clo ...

  9. 初学Python——字符串相关操作

    基本字符串操作 Pyhton中字符串的格式化输出在前面已经总结了,接下来介绍一些常用的字符串操作 先定义一个字符变量,以下的操作都以此为例: name=" my name is china ...

随机推荐

  1. IDEA通用配置

    文件的自动author注释

  2. 详细剖析pyecharts大屏的Page函数配置文件:chart_config.json

    目录 一.问题背景 二.揭开json文件神秘面纱 三.巧用json文件 四.关于Table图表 五.同步讲解视频 5.1 讲解json的视频 5.2 讲解全流程大屏的视频 5.3 讲解全流程大屏的文章 ...

  3. 在MySQL中保存Java对象

    需要在MySQL中保存Java对象. 说明: 对象必须实现序列化 MySQL中对应字段设置为blob 将Java对象序列化为byte[] public static byte[] obj2byte(O ...

  4. Android7.1.2 源码编译并烧写Nexus5X

    1.环境配置 Ubuntu18.04 openJDK1.8 Python2.7 2.更新Ubuntu镜像源 编辑/etc/apt/source.list,替换为以下内容 deb http://mirr ...

  5. Hadoop安装学习(第四天)

    学习任务:解决9000端口丢失导致hadoop无法连接的问题 解决方法:格式化namenode 步骤: 1.进入hadoop/bin 2.输入命令:hadoop namenode -format(hd ...

  6. Scalable Multi-Party Private Set-Intersection-解读

    本文记录阅读该paper的笔记. 摘要 本文给出两种MPSI协议,采用的是星型拓扑结构,即有一个leader,需要和其他参与者交互.优点是并非所有各方都必须同时在线: (1)能抗半诚实攻击 通信复杂度 ...

  7. Python Selenium库

    Selenium库 自动化测试工具,支持多种游览器 爬虫中主要用来解决JavaScript渲染的问题 安装Selenium pip3 install selenium 安装游览器驱动 下载驱动地址:h ...

  8. CSS3:scrollbar样式设置

    CSS3:scrollbar样式设置 1. 设置出现滚动条的方式 overflow:scroll --- x和y方向都会出现滚动条 或者 overflow-x:scroll --- 只有x方向出现滚动 ...

  9. redis-server.exe双击闪退

    转自 https://blog.csdn.net/qq_40361770/article/details/80454248 解决方法: 1-win+R 打开命令行 2-cd至redis目录,例如 D: ...

  10. JavaScript Object学习笔记二

    Object.create(proto, [propertiesObject])//创建对象,使用参数一来作为新创建对象的__proto__属性,返回值为在指定原型对象上添加自身属性后的对象 //参数 ...