1.基本用法

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 # Author:James Tao
 4 
 5 import shutil
 6 
 7 #copy文件方法一
 8 f1=open('copyshutil.txt',encoding='UTF-8')
 9 f2=open('mycopy.txt','w',encoding='UTF-8')
10 shutil.copyfileobj(f1,f2)#copy一个新文件内容与copyshutil相同
11 
12 #copy文件方法二
13 shutil.copyfile('copyshutil.txt','mycopy.txt')
14 
15 #copy文件所有属性
16 shutil.copystat('copyshutil.txt','mycopy.txt')#必须传入两个已存在的文件,不创建文件
17 
18 #同时copy文件和权限
19 shutil.copy('copyshutil.txt','mycopy.txt')#创建一个新文件
20 
21 #同时copy文件和状态信息
22 shutil.copy2('copyshutil.txt','mycopy.txt')#创建一个新文件
23 
24 #递归地copy文件
25 shutil.copytree('shutilfile','myshutilfile')#创建一个新文件,并将原文件内的所有子文件copy
26 
27 #删除目录
28 shutil.rmtree('myshutilfile')

2.压缩文件

创建压缩包并返回文件路径,例如zip、tar

代码格式:shutil.make_archive(base_name,format,root_dir,owner,group,logger)、

base_name:压缩包的文件名,也可以是压缩包的路径

          只写文件名base_name:保存至当前路径

          写成\Users\用户\123\base_name:保存至\Users\用户\123\base_name

format:压缩包种类:zip,tar,bztar,gztar

root_dir:要压缩的文件夹路径(默认当前目录)

owner:用户,默认当前用户

group:组,默认当前组

logger:用于记录日志,通常是logging.Logging对象

代码:

 

1 shutil.make_archive('shutil_archive','zip','D:\python')#将D:\python文件夹压缩保存至当前路径,压缩包名为shutil_archive.zip

 

运行结果:

 

压缩文件的过程实际上要调用zipfile模块,例:

 

1 import zipfile
2 z=zipfile.ZipFile('day5.zip','w')#在当前路径生成一个名字为day5的压缩文件
3 
4 z.write('mycopy.txt')#将mycopy.txt压缩进名字为day5的压缩文件
5 z.close()

 

运行结果:

 

posted on 2018-10-28 20:41  研究僧桃子  阅读(93)  评论(0编辑  收藏  举报