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之Import 模块
Oct 13 Python
python高手之路python处理excel文件(方法汇总)
Jan 07 Python
Flask框架各种常见装饰器示例
Jul 17 Python
Python3.6.2调用ffmpeg的方法
Jan 10 Python
Django ModelForm组件使用方法详解
Jul 23 Python
Python 继承,重写,super()调用父类方法操作示例
Sep 29 Python
Python实现搜索算法的实例代码
Jan 02 Python
Python利用FFT进行简单滤波的实现
Feb 26 Python
Python定时器线程池原理详解
Feb 26 Python
Python 读取WAV音频文件 画频谱的实例
Mar 14 Python
python将音频进行变速的操作方法
Apr 08 Python
移除Selenium中window.navigator.webdriver值
Jun 10 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
php循环语句 for()与foreach()用法区别介绍
2012/09/05 PHP
php和C#的yield迭代器实现方法对比分析
2019/07/17 PHP
IE8 引入跨站数据获取功能说明
2008/07/22 Javascript
jquery 新手学习常见问题解决方法
2010/04/18 Javascript
JQuery 拾色器插件发布-jquery.icolor.js
2010/10/20 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
jQuery数组处理方法汇总
2011/06/20 Javascript
javascript替换已有元素replaceChild()使用介绍
2014/04/03 Javascript
JavaScript判断字符长度、数字、Email、电话等常用判断函数分享
2015/04/01 Javascript
JS非Alert实现网页右下角“未读信息”效果弹窗
2015/09/26 Javascript
jQuery选择器用法实例详解
2015/12/17 Javascript
浅析JS中对函数function的理解(基础篇)
2016/10/14 Javascript
layer实现弹窗提交信息
2016/12/12 Javascript
jQuery图片缩放插件smartZoom使用实例详解
2017/08/25 jQuery
seajs中模块依赖的加载处理实例分析
2017/10/10 Javascript
Vue中的Vux配置指南
2017/12/08 Javascript
iSlider手机端图片滑动切换插件使用详解
2019/12/24 Javascript
[05:22]DOTA2 2015国际邀请赛中国区预选赛首日TOP10
2015/05/26 DOTA
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
py中的目录与文件判别代码
2008/07/16 Python
在 Django/Flask 开发服务器上使用 HTTPS
2014/07/03 Python
Python使用MD5加密字符串示例
2014/08/22 Python
Python中用于转换字母为小写的lower()方法使用简介
2015/05/19 Python
Python和Java进行DES加密和解密的实例
2018/01/09 Python
Python补齐字符串长度的实例
2018/11/15 Python
Python3视频转字符动画的实例代码
2019/08/29 Python
Windows下Sqlmap环境安装教程详解
2020/08/04 Python
HTML5 Video标签的属性、方法和事件汇总介绍
2015/04/24 HTML / CSS
h5页面背景图很长要有滚动条滑动效果的实现
2021/01/27 HTML / CSS
梅西酒窖:Macy’s Wine Cellar
2018/01/07 全球购物
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
临床医学大学生求职信
2013/09/28 职场文书
幼儿园大班开学教师寄语
2014/04/03 职场文书
水电工岗位职责
2015/02/14 职场文书
MySQL分区表实现按月份归类
2021/11/01 MySQL
win10电脑右下角输入法图标不见了?Win10右下角不显示输入法的解决方法
2022/07/23 数码科技