简单了解python shutil模块原理及使用方法

作者:道法自然﹑ 时间:2023-02-12 22:07:44 

shutil

--High-level file operations 高级的文件操作模块

os模块提供了对目录或者文件的新建/删除/查看文件属性,还提供了对文件以及目录的路径操作。比如说:绝对路径,父目录…… 但是,os文件的操作还应该包含移动 复制 打包 压缩 解压等操作,这些os模块都没有提供。

而本章所讲的shutil则就是对os中文件操作的补充。--移动 复制 打包 压缩 解压

shutil 功能:

1 shutil.copyfileobj(fsrc,fds+[,length=16*1024]) #copy文件内容到另一个文件,可以copy指定大小的内容

import shutil
f1=open('1.txt','r')
f2=open('1_copy.txt','w+')
shutil.copyfileobj(f1,f2,length=16*1024)

2 shutil.copyfile(src,dst) #copy文件内容,是不是感觉上面的文件复制很麻烦?还需要自己手动用open函数打开文件,在这里就不需要了,事实上,copyfile调用了copyfileobj

import shutil
shutil.copyfile('1.txt','1_copy_file.txt')

3 shutil.copymode(src,dst) #仅copy权限,不更改文件内容,组和用户。

准备2个文件

-rwxr-xr-x 1 python python 66 4月 24 11:50 1.txt #权限是755
-rwx-w--w- 1 python python 0 4月 24 11:50 2.txt #权限是722

import shutil
shutil.copymode('1.txt','2.txt')

运行结果后:

-rwxr-xr-x 1 python python 66 4月 24 11:50 1.txt #权限是755
-rwxr-xr-x 1 python python 0 4月 24 11:50 2.txt #权限是755

注意:是根据第一个文件的权限来同步第二个文件权限,并且不支持三个参数,例如:shutil.copymode('1.txt','2.txt','3.txt')

4 shutil.copystat(src,dst) #复制所有的状态信息,包括权限,组,用户,时间等

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

来源:https://www.cnblogs.com/hello-wei/p/10762089.html

标签:python,shutil,模块
0
投稿

猜你喜欢

  • 注册和填表中常见的中英文对照

    2008-07-26 12:12:00
  • 通过python的matplotlib包将Tensorflow数据进行可视化的方法

    2023-04-21 17:37:43
  • css样式表滤镜全接触

    2007-10-26 12:48:00
  • Python常用数据类型之间的转换总结

    2023-06-21 10:06:21
  • php动态函数调用方法

    2023-11-15 00:18:30
  • Python使用type动态创建类操作示例

    2021-05-20 11:47:02
  • 如何利用Python动态展示排序算法

    2022-03-06 17:23:48
  • sqlserver连接错误之SQL评估期已过的问题解决

    2024-01-14 07:25:27
  • Python的Flask项目中获取请求用户IP地址 addr问题

    2021-09-08 08:38:47
  • Python urllib模块urlopen()与urlretrieve()详解

    2022-01-17 02:32:02
  • 利用python画一颗心的方法示例

    2021-06-04 01:14:33
  • python logging日志打印过程解析

    2023-11-03 13:04:09
  • 关于windos10环境下编译python3版pjsua库的问题

    2021-06-04 08:12:13
  • 准备SQL Server 2008透明数据加密

    2009-01-22 14:18:00
  • python 图片验证码代码

    2023-07-22 00:33:19
  • 15分钟学会vue项目改造成SSR(小白教程)

    2024-04-27 16:07:07
  • 前端页面文件拖拽上传模块js代码示例

    2023-09-20 02:15:30
  • python中 _、__、__xx__()区别及使用场景

    2021-07-28 06:10:48
  • GOOGLE LOGO 设计演化过程

    2008-02-13 19:41:00
  • Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息

    2022-08-08 04:10:31
  • asp之家 网络编程 m.aspxhome.com