python shutil文件操作工具使用实例分析


Posted in Python onDecember 25, 2019

这篇文章主要介绍了python shutil文件操作工具使用实例分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

python中的shutil是一种高层次的文件操作工具,主要强大之处在于对文件的复制与删除操作更友好

一:shutil. copyfileobj(fsrc,fdst [23])

将 fsrc 的内容复制到 fdst。如果给出整数长度,则为缓冲区大小。注意,fsrc、fdst,必须是已经打开的文件,而不能传入文件名的字符串

def copyfileobj(fsrc, fdst, length=16*1024):
  """copy data from file-like object fsrc to file-like object fdst"""
  while 1:
    buf = fsrc.read(length)
    if not buf:
      break
    fdst.write(buf)

代码如下:

f1 = open("111.txt", "r",encoding="utf-8")
f2 = open("222.txt", "w", encoding="utf-8")
shutil.copyfileobj(fsrc=f1, fdst=f2,length=15)

二:def copyfile(src, dst, *, follow_symlinks=True)

直接拷贝整个文件。

运用代码如下:

shutil.copyfile("111.txt", "333.txt")

后面的333.txt可以不是已经存在的,如果存在的话,则会被覆盖掉。

三:shutil. copymode(src,dst,*,follow_symlinks=True)

只是会复制其权限其他的东西是不会被复制的

代码运用如下:

shutil.copymode("111.txt", "333.txt")

注意,这里的111.txt 333.txt都必须是已经存在的,表示把前者的权限复制到后者,也可以理解为给后者添加前者的权限。但不会改变后者的内容。

四:shutil. copystat(src,dst,*,follow_symlinks=True)

和上面的copymode类似,但copystat复制权限,最后访问 time,最后修改 time,以及从 src 到 dst 的标志。也不会改变后者的内容

shutil.copystat("111.txt", "333.txt")

五:shutil. copy(src,dst,*,follow_symlinks=True)

复制一个文件到一个文件或一个目录,如果 dst 指定目录,则使用 src 中的基本文件名将文件复制到 dst 中。返回新创建文件的路径。

复制到文件和前面类似:

shutil.copy("111.txt", dst="444.txt")

复制到目录,就是说我们可以只给第二个参数指定一个路径,以原名字复制到指定路径,像这样:

shutil.copy("111.txt", dst="D:\\222.txt")

而前面的copyfile则必须再路径后面加上命名,以给定的名字复制到指定路径,像这样:

shutil.copy("111.txt", dst="D:\\222.txt")

六:shutil. copy2(src,dst,*,follow_symlinks=True)

在copy上的基础上再复制文件最后访问时间与修改时间也复制过来了,类似于cp ?p的东西

七:shutil. copytree(src,dst,symlinks=False,ignore=None,copyfunction=copy2,ignore_dangling_symlinks=False)

拷贝目录,如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接

shutil.copytree(src="11", dst="22")

注意:如果目录不在同一路径下,需要在前面加上绝对或相对路径

八:shutil. rmtree(路径,ignore_errors=False,onerror=None)

递归删除一个目录以及目录内的所有内容:

代码如下:

shutil.rmtree("E:\py project\python_ku\subprocess_demo\\11")

九:shutil. move(src,dst,copyfunction=copy2)

递归地将文件或目录(src)移动到另一个位置(dst)并返回目标

shutil.move(src="11", dst="D:\\")

上面的命令表示把当前路径下的11这个目录,移动到D:\\下

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python的Crypto模块实现AES加密实例代码
Jan 22 Python
python中实现数组和列表读取一列的方法
Apr 03 Python
Python求解任意闭区间的所有素数
Jun 10 Python
浅谈pycharm的xmx和xms设置方法
Dec 03 Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
Jul 28 Python
python按行读取文件并找出其中指定字符串
Aug 08 Python
python实现WebSocket服务端过程解析
Oct 18 Python
使用tqdm显示Python代码执行进度功能
Dec 08 Python
Tensorflow 定义变量,函数,数值计算等名字的更新方式
Feb 10 Python
python用TensorFlow做图像识别的实现
Apr 21 Python
python下对hsv颜色空间进行量化操作
Jun 04 Python
python字典按照value排序方法
Dec 28 Python
使用Python给头像加上圣诞帽或圣诞老人小图标附源码
Dec 25 #Python
如何基于python测量代码运行时间
Dec 25 #Python
python字典setdefault方法和get方法使用实例
Dec 25 #Python
Python 内置变量和函数的查看及说明介绍
Dec 25 #Python
python @propert装饰器使用方法原理解析
Dec 25 #Python
python 消除 futureWarning问题的解决
Dec 25 #Python
提升python处理速度原理及方法实例
Dec 25 #Python
You might like
2019年中国咖啡业现状与发展趋势
2021/03/04 咖啡文化
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
2008/12/06 PHP
2款PHP无限级分类实例代码
2015/11/11 PHP
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
jQuery实现可拖动的浮动层完整代码
2013/05/27 Javascript
原生JS可拖动弹窗效果实例代码
2013/11/09 Javascript
javascript运行机制之this详细介绍
2014/02/07 Javascript
Nodejs极简入门教程(三):进程
2014/10/27 NodeJs
JavaScript判断一个字符串是否包含指定子字符串的方法
2015/03/18 Javascript
基于JavaScript实现仿京东图片轮播效果
2015/11/06 Javascript
引用jquery框架后出错的解决方法
2016/08/09 Javascript
Jquery实时监听input value的实例
2017/01/26 Javascript
Javascript中的神器——Promise
2017/02/08 Javascript
node学习记录之搭建web服务器教程
2017/02/16 Javascript
javascript使用btoa和atob来进行Base64转码和解码
2017/03/20 Javascript
收藏AngularJS中最重要的核心功能
2017/07/09 Javascript
简易Vue评论框架的实现(父组件的实现)
2018/01/08 Javascript
JS限制输入框输入的实现代码
2018/07/02 Javascript
详解JS实现简单的时分秒倒计时代码
2019/04/25 Javascript
原生js滑动轮播封装
2020/07/31 Javascript
[01:53]3.19 DOTA2发布会 现场精彩Coser表演
2014/03/25 DOTA
让python的Cookie.py模块支持冒号做key的方法
2010/12/28 Python
一行代码让 Python 的运行速度提高100倍
2018/10/08 Python
PyGame贪吃蛇的实现代码示例
2018/11/21 Python
python读文件的步骤
2019/10/08 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
新闻网站实习自我鉴定
2013/09/25 职场文书
开会迟到检讨书
2014/01/08 职场文书
积极贯彻学习两会精神总结
2014/03/17 职场文书
初中英语演讲稿
2014/04/29 职场文书
党支部三严三实对照检查材料思想汇报
2014/09/29 职场文书
外贸业务员岗位职责
2015/02/13 职场文书
文员岗位职责范本
2015/04/16 职场文书
于丹论语心得观后感
2015/06/15 职场文书
PHP中strval()函数实例用法
2021/06/07 PHP