三十四、python中shutil模块的介绍
- '''
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模块的介绍的更多相关文章
- Python核心技术与实战——十四|Python中装饰器的使用
我在以前的帖子里讲了装饰器的用法,这里我们来具体讲一讲Python中的装饰器,这里,我们从前面讲的函数,闭包为切入点,引出装饰器的概念.表达和基本使用方法.其次,我们结合一些实际工程中的例子,以便能再 ...
- 学以致用三十二-----python中函数的括号使用
一直以来对python中函数括号的使用,有点分不清楚,到底什么时候用括号,什么时候不用括号,造成了很大看困惑. 今天来总结下. class aaa(): y = 'you' def __init__( ...
- python中shutil模块
shutil是对OS中文件操作的补充:移动.复制.打包.压缩.解压. 1.copy文件内容到另一个文件,可以copy指定大小的内容. shutil.copyfileobj(fsrc, fdst[, l ...
- 网站开发进阶(三十四)编码中的setCharacterEncoding 理解
编码中的setCharacterEncoding 理解 1.pageEncoding="UTF-8"的作用是设置JSP编译成Servlet时使用的编码. 2.contentType ...
- python中shutil模块的使用
可以操作权限的处理文件模块:shutil # 基于路径的文件复制 import shutil shutil.copyfile("oldfile_path","newfil ...
- 三十四 Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy信号详解
信号一般使用信号分发器dispatcher.connect(),来设置信号,和信号触发函数,当捕获到信号时执行一个函数 dispatcher.connect()信号分发器,第一个参数信号触发函数,第二 ...
- python学习 (三十四) Python文件操作
1 写文件 my_list = ["] my_file = open("myfile.txt", "w") for item in my_list: ...
- Python中re模块详细介绍
正则的介绍及应用实例详解 """ 1.什么是正则 正则就是用一系列具有特殊含义的字符组成一套规则,该规则用来描述具有某一特征的字符串, 正则就是用来去一个大的字符串中匹配 ...
- Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式
Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell 文件 Py ...
随机推荐
- [BZOJ 2006] [NOI 2010]超级钢琴(贪心+ST表+堆)
[BZOJ 2006] [NOI 2010]超级钢琴(贪心+ST表+堆) 题面 给出一个长度为n的序列,选k段长度在L到R之间的区间,一个区间的值等于区间内所有元素之的和,使得k个区间的值之和最大.区 ...
- 06-REST Framework - API
# Django REST Framework# 1. REST- 前后端分离- API-ApplicationProgrammingInterface - 为了应付千变万化的前端需求- REST:R ...
- element ui 选择期 传对象
<template> <el-select value-key="label" v-model="value" placeholder=&qu ...
- Linux 开机自动启动脚本
1)编写要执行脚本的sh文件mysetup.sh #!/bin/sh ### BEGIN INIT INFO # Provides: land.sh # Required-start: $local_ ...
- diff 比较两个文件的不同
1.命令功能 diff 逐行比较文件内容,并输出文件差异. 2.语法格式 diff option file1 file2 diff 选项 文件1 文件2 参数说明 参数 参数说明 ...
- Python核心技术与实战——六|异常处理
和其他语言一样,Python中的异常处理是很重要的机制和代码规范. 一.错误与异常 通常来说程序中的错误分为两种,一种是语法错误,另一种是异常.首先要了解错误和异常的区别和联系. 语法错误比较容易理解 ...
- SpringBoot使用Easypoi导出excel示例
SpringBoot使用Easypoi导出excel示例 https://blog.csdn.net/justry_deng/article/details/84842111
- 题解 P1587 【[NOI2016]循环之美】
知识点:莫比乌斯反演 积性函数 杜教筛 废话前言: 我是古明地恋,写这篇题解的人已经被我 请各位读者自行无视搞事的恋恋带有删除线的内容,谢谢茄子. 这道题目本身并不难,但是公式推导/代码过程中具有迷惑 ...
- Markdown的使用和计算机基础
TOC] 一级标题 这不是开玩笑 你问我为什么? 粗的才好(滑稽) 什么!明明有人推我 ==一闪一闪亮晶晶== 我上面有人^人在这^ water?H~2~O(下标) hello world! hell ...
- Linux学习-NFS服务
一.NFS服务相关介绍 1.NFS简介 NFS (Network File System) 网络文件系统,基于内核的文件系统.Sun公司开发,通过使用NFS,用户和程序可以像访问本地文件一样访问远端系 ...