[ Python入门教程 ] Python文件基本操作_shutil模块
shutil模块是对os模块中文件操作的补充,提供文件和目录的移动、复制、打包、压缩、解压等功能
shutil常用函数
shutil.copyfile(src, dst) 复制文件, 如果dst已存在则覆盖
shutil.move(src, dst) 移动文件或重命名
shutil.copymode(src, dst) 只拷贝权限。文件内容、组、用户均不变
shutil.copystat(src, dst) 复制权限、最后访问时间、最后修改时间
shutil.copy(src, dst) 复制一个文件到一个文件或一个目录
shutil.copy2(src, dst) 复制文件和状态信息,类似于shell中的cp –p命令
shutil.copytree(olddir, newdir, symlinks=False, ignore=None) 递归复制文件夹
shutil.rmtree(src) 递归删除目录以及目录内的所有内容
shutil.make_archive(base_name, format,...) 创建压缩包并返回文件路径
常用函数大概就是这么些。。下面我们开始通过操作实例讲解一下这些函数的使用方法和注意事项。也方便后面用到这个shutil模块时可以做到信手拈来。
shutil使用实例
1、将data1文件夹下的123.txt文件复制到data2文件夹下。保持文件名123.txt不变。

说明:如果指定目录D:\dir_temp\data2下已经存在123.txt文件,会进行覆盖操作。
2、将data1文件夹下的123.txt文件复制到data2文件夹下。同时文件名修改为456.txt

3、将data1文件夹下的123.txt文件移动到data2文件夹下

4、将data1文件夹下的子文件夹及文件复制到data2目录下。复制前data1和data2的文件夹及内容如下:

执行如下操作

特别注意:data2文件夹下的data1目录不能存在,否则会报错。可以自己尝试一下。
执行结果如下:

4、删除data2文件夹下的子文件夹和文件。

可以发现,data2文件夹已经不存在了。
小结
使用shutil模块对文件和目录的复制、移动、删除操作基本上就是这些了。看了这些例子再用shutil模块应该都没啥困难了吧。
[ Python入门教程 ] Python文件基本操作_shutil模块的更多相关文章
- [ Python入门教程 ] Python中JSON模块基本使用方法
JSON (JavaScript Object Notation)是一种使用广泛的轻量数据格式,Python标准库中的json模块提供了一种简单的方法来编码和解码JSON格式的数据.用于完成字符串和p ...
- [ Python入门教程 ] Python字典数据类型及基本操作
字典是Python中重要的数据类型,字典是由"键-值"对组成的集合,"键-值"对之间用逗号隔开,包含在一对花括号中.字典中的"值"通过&qu ...
- boost.python入门教程 ----python 嵌入c++
Python语言简介 Python是一种脚本语言.以开放的开发接口和独特的语法著称.尽管Python在国内引起注意只有几年的时间,但实际上Python出现于上世纪90年代(据www.python.or ...
- [ Python入门教程 ] Python文件基本操作
本文将python文件操作实例进行整理,以便后续取用. 文件打开和创建 Python中使用open()函数打开或创建文件.open()的声明如下: open(name[, mode[, bufferi ...
- [ Python入门教程 ] Python中日志记录模块logging使用实例
python中的logging模块用于记录日志.用户可以根据程序实现需要自定义日志输出位置.日志级别以及日志格式. 将日志内容输出到屏幕 一个最简单的logging模块使用样例,直接打印显示日志内容到 ...
- [ Python入门教程 ] Python中日期时间datetime模块使用实例
Python中datetime模块提供强大易用的日期处理功能,用于记录程序操作或修改时间.时间计算.日志时间显示等功能.datatime模块重新封装了time模块,提供的类包括date.time.da ...
- [ Python入门教程 ] Python生成随机数模块(random)使用方法
1.使用randint(a,b)生成指定范围内的随机整数.randint(a,b)表示从序列range([a,b])中获取一个随机数,包括b. >>> random.randint( ...
- [ Python入门教程 ] Python基础语法
Python的语法非常简练,因此用Python编写的程序可读性强.容易理解.本章将介绍Python的基本语法和概念. Python文件类型 1.源代码.Python的源代码的扩展名以py结尾,可直接运 ...
- [ Python入门教程 ] Python的控制语句
Python控制语句由条件语句.循环语句构成.控制语句根据条件表达式控制程序的流转.本章将介绍Python中控制语句的基本语法. 条件判断语句 (1)if条件语句 if语句用于检测某个条件是否成立.如 ...
随机推荐
- .NET种Json时对单引号和特殊字符串的处理
转自:https://www.cnblogs.com/ITniao/archive/2011/01/06/1929261.html .NET种Json时对单引号和特殊字符串的处理 在Asp.NET ...
- nodejs环境使用Typeorm连接查询Oracle
首先是typeorm的官方地址, 国内有人翻了中文版,不保证时效性 ·通过npm安装下列包: typeorm //typeorm连接数据库 @types/node //类型系统 typescript ...
- [转]UIpath advanced certification dumps
本文转自:https://dotnetbasic.com/2019/06/uipath-advanced-certification-dumps.html UiPath advanced certif ...
- 利用openssl自建CA体系
使用 OpenSSL 创建私有 CA:1 根证书 使用 OpenSSL 创建私有 CA:2 中间证书 使用 OpenSSL 创建私有 CA:3 用户证书 今天跟着上面的三部曲,做了一下openssl的 ...
- 理解 Flutter 中的 Key
概览 在 Flutter 中,大概大家都知道如何更新界面视图: 通过修改 Stata 去触发 Widget 重建,触发和更新的操作是 Flutter 框架做的. 但是有时即使修改了 State,Flu ...
- Oracle GoldenGate常用参数详解
Oracle GoldenGate常用参数详解http://blog.itpub.net/28389881/viewspace-2564461/
- TP验证规则Validate
use think\Validate; <?php namespace app\common\model; use think\Validate; use think\Db; class Inv ...
- 关于AttributeError: 'NoneType' object has no attribute 'send_keys'
在学web自动化测试时,通过PO模型将特定页面的一些元素及元素操作放在特定页面模块中, 然后提取公共的部分, 如元素等待WebDriverWait, 元素操作send_keys, click, 获取元 ...
- jQuery-点击返回顶部
在页面上,有时需要点击某个图标钮实现返回顶部的效果. 实现方式如下,给图标按钮增加名叫goTop-hook的类. // 点击返回顶部 $(window).scroll(function() { if ...
- mac怎么连接windows远程桌面
首先需要下载一个软件,因为苹果电脑并没有提供免费的软件给我们,所以不能像windows一样, 直接在任务管理中搜素远程桌面然后输入ip地址,用户名,密码就可以远程连接, 而苹果也有提供一个软件,但要付 ...