'''
A.shutil:高级的文件 文件夹 压缩包 处理模块
''' import shutil '''
1.copyfileobj(a1,a2,lenth):将文件内容拷贝到另一个文件中
''' shutil.copyfileobj(open('old.xml','r'),open('new.xml','w'),1) '''
2.copyfile(a1,a2):拷贝文件
'''
shutil.copyfile('new.xml','new2.xml') '''
3.copymode(a1,a2):拷贝文件,仅拷贝权限,内容,组,用户不变
'''
shutil.copymode('new.xml','new3.xml') '''
4.copystat(a1,a2):拷贝状态信息
'''
shutil.copystat('new.xml','new3.xml') '''
5.copy(a1,a2):拷贝文件内容和权限
'''
shutil.copy('new.xml','new4.xml') '''
6.copy2(a1,a2):拷贝文件内容和状态
'''
shutil.copy2('new.xml','new5.xml') '''
*7.copytree(a,b,symlinks=False, ignore=None):递归去拷贝文件夹,abs是文件夹,symlinks=False时为拷贝快捷方式,symlinks=True时,拷贝的是原文件夹
ignore=shutil.ignore_patterns('*.pyc','tmp'):忽略拷贝以'*.pyc','tmp'结尾和开头的文件
''' #shutil.copytree('a','b',ignore=shutil.ignore_patterns('*.pyc','tmp')) '''
8.rmtree(path):递归的去删除文件夹
'''
#shutil.rmtree('c') '''
9.move(a,b):递归去移动文件,类似于mv命令,其实就是重命名
'''
#shutil.move('a','c') '''
B.make_archive:创建压缩文件
xx.make_archive(base_name, format, ...)
创建压缩包并返回文件路径,例如:zip、tar
创建压缩包并返回文件路径,例如:zip、tar
base_name: 压缩包的文件名,也可以是压缩包的路径。只是文件名时,则保存至当前目录,否则保存至指定路径,
如:www = > 保存至当前路径
format: 压缩包种类,“zip”, “tar”, “bztar”,“gztar”
root_dir: 要压缩的文件夹路径(默认当前目录)
owner: 用户,默认当前用户
group: 组,默认当前组
logger: 用于记录日志,通常是logging.Logger对象
''' # 将 D:\1122 下的文件打包放置当前程序目录
ret = shutil.make_archive("xxx",'gztar',root_dir='D:\\1122') # 将 D:\1122下的文件打包放置 D:\1122目录
ret = shutil.make_archive("D:\\1122\\xxx",'gztar',root_dir='D:\\1122') '''
C.zipfile解压缩文件
'''
import zipfile
# z=zipfile.ZipFile('xx.zip','w')
# z.write('ini')
# z.write('new2.xml') # z.close()
#解压
z=zipfile.ZipFile('xx.zip','r')
z.extractall() print(z.namelist()) #压缩包中的文件列表
#解压
z.extract('ini')
z.close()
'''
D.tarfile:解压缩
'''
import tarfile
#压缩
tar=tarfile.open('xxx.tar','w')
tar.add('ini',arcname='init')
tar.add('new2.xml',arcname='new22.xml')
tar.close() #解压
tar=tarfile.open('xxx.tar','r')
#tar.extractall()
print(tar.getmembers())
tar.extract('init')
tar.close()

三十四、python中shutil模块的介绍的更多相关文章

  1. Python核心技术与实战——十四|Python中装饰器的使用

    我在以前的帖子里讲了装饰器的用法,这里我们来具体讲一讲Python中的装饰器,这里,我们从前面讲的函数,闭包为切入点,引出装饰器的概念.表达和基本使用方法.其次,我们结合一些实际工程中的例子,以便能再 ...

  2. 学以致用三十二-----python中函数的括号使用

    一直以来对python中函数括号的使用,有点分不清楚,到底什么时候用括号,什么时候不用括号,造成了很大看困惑. 今天来总结下. class aaa(): y = 'you' def __init__( ...

  3. python中shutil模块

    shutil是对OS中文件操作的补充:移动.复制.打包.压缩.解压. 1.copy文件内容到另一个文件,可以copy指定大小的内容. shutil.copyfileobj(fsrc, fdst[, l ...

  4. 网站开发进阶(三十四)编码中的setCharacterEncoding 理解

    编码中的setCharacterEncoding 理解 1.pageEncoding="UTF-8"的作用是设置JSP编译成Servlet时使用的编码. 2.contentType ...

  5. python中shutil模块的使用

    可以操作权限的处理文件模块:shutil # 基于路径的文件复制 import shutil shutil.copyfile("oldfile_path","newfil ...

  6. 三十四 Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy信号详解

    信号一般使用信号分发器dispatcher.connect(),来设置信号,和信号触发函数,当捕获到信号时执行一个函数 dispatcher.connect()信号分发器,第一个参数信号触发函数,第二 ...

  7. python学习 (三十四) Python文件操作

    1 写文件 my_list = ["] my_file = open("myfile.txt", "w") for item in my_list: ...

  8. Python中re模块详细介绍

    正则的介绍及应用实例详解 """ 1.什么是正则 正则就是用一系列具有特殊含义的字符组成一套规则,该规则用来描述具有某一特征的字符串, 正则就是用来去一个大的字符串中匹配 ...

  9. Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式

    Python第十四天 序列化  pickle模块  cPickle模块  JSON模块  API的两种格式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Py ...

随机推荐

  1. java代码转化为jar包,再转化为.exe文件步骤

    下面是具体步骤: 一.先把自己的程序发布成jar文件 这是eclipse自带的功能,右键工程包-->Export 然后选择Java-->JAR file,next 选择输出路径,next ...

  2. 探索ASP.Net Core 3.0系列二:聊聊ASP.Net Core 3.0 中的Startup.cs

    原文:探索ASP.Net Core 3.0系列二:聊聊ASP.Net Core 3.0 中的Startup.cs 前言:.NET Core 3.0 SDK包含比以前版本更多的现成模板. 在本文中,我将 ...

  3. vue项目1-pizza点餐系统7-路由之控制滚动行为

    一.在home组件中设置具体信息,设计样式 <template> <div class="row"> <div id="home" ...

  4. vue.js-vuex深入浅出

    1:正确的创建目录 2:action.js 异步请求数据 3:index.js 文件声名 4:mutation.js 同步事务 修改state中的值 5:state.js 申明和保存变量或对象 6:如 ...

  5. postman中x-www-form-urlencoded与form-data的区别

    这是W3C定义的两种不同的表格类型,如果你想发送简单的text/ASCII数据,使用x-www-form-urlencoded , 这是默认的形式. 如果你想发送非ASCII文本或者大的二进制数据,使 ...

  6. XIB约束布局问题(button)

    button默认不给宽度:系统Xib自动适配,最小宽度30.在使用宽度计算时,无法小于这个值

  7. MySQL使用explain时各字段解释

    1.id select查询的序列号,包含一组数字,表示查询中执行select子句或操作表的顺序 三种情况: (1)id相同,执行顺序由上至下 id相同,执行顺序由上至下 此例中 先执行where 后的 ...

  8. 关于jsp删除成功,添加成功等之后 页面自动跳转的js写法

    因为比较常用,所以写在博客里保存起来,防止以后忘了不会写了: 删除成功,<span id="time" style="background:red"> ...

  9. 微信授权获取code/openid

    微信网页授权 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 关于网页授权回调域名的说明 1.在微信公众号请求用户网页授权之前,开发者需要 ...

  10. css将两个元素水平对齐,兼容IE8

    css实现元素水平对齐 css实现水平对齐,如图 有人会说css实现这种水平对齐要兼容ie8还不简单吗?使用float: left,或者display: inline-block,不就可以了吗?是的, ...