shutil.copyfileobj(fsrc,fdst[,length]) #将文件内容拷贝到别一个文件中
shutil.copyfile(src,dst) #拷贝文件
shutil.copymode(src,dst) #仅拷贝权限,内容,组、用户均不变。
shuil.copystat(src,dst) #拷贝状态的信息,包括modt bits atime, mtime flags
shutil.copy(src,dst) #拷贝文件和权限
shutil.copy2(src,dst) #拷贝文件和状态信息
shutil.ignore_patterns(*patterns)
shutil.copytree(src,dst,symlinks=False,ignore=none) #以上两行结合用,递归的去拷贝文件
例:
import shutil
shutil.copytree("my_proj","pack3",ignore=shutil.ignore_patterns("__init__.py","views.py"))
shutil.rmtree(path[,ignore_errors[,onerror]]) #递归的去删除文件
shutil.move(src,dst) #递归式的去移动文件
shutil.make_archive(base_name,format,...)
创建压缩包并返回文件路径,例如:zip、tar
import zipfile
#压缩打包文件
# z=zipfile.ZipFile("test.zip",‘w‘)
# z.write(‘mysql.log‘)
# zip.write(‘re模块.py‘)
# z.write(‘p3‘)
# z.close()
#解压文件
z=zipfile.ZipFile("test.zip",‘r‘)
z.extractall()
z.close()
rar文件打包及解压例子
import tarfile
# t =tarfile.open("test.rar",‘w‘)
# t.add("..\\常用模块") #打包相对路径
# t.add("C:\\Users\\Administrator\\PycharmProjects\\untitled1\\常用模块\\pack3")
# #带目录一起打包
# t.add("C:\\Users\\Administrator\\PycharmProjects\\untitled1\\常用模块\\pack3",arcname=‘pack5‘)
# #单独打包,并改名为pack5
# t.add("mysql.log")
# t.close()
#解压
t=tarfile.open("test.rar",‘r‘)
t.extractall("test") #可设置解压路径(这个例子是解压到当前目录test,没有就生成test文件夹)
t.close()