import shutil
高级的文件,文件夹,压缩包的处理模块,也主要用于文件的拷贝
shutil.copyfileobj(fsrc,fdst[,length]):
将文件的内容拷贝到另一个文件(可以指定length长度进行拷贝)
1
2
|
import shutil
shutil.copyfileobj( open ( 'old.txt' , 'r' ), open ( 'new.txt' , 'w' ))
|
shutil.copyfile(src,dst):
拷贝文件
1
2
|
import shutil
shutil.copyfile( 'f1.log' , 'f2.log' )
|
shutil.copymode(src,dst):
仅拷贝权限,内容、组、用户均不变
1
2
|
import shutil
shutil.copymode( 'f1.log' , 'f2.log' )
|
shutil.copystat(src,dst):
拷贝状态的信息,包括:mode bits,atime,mtime,flags
1
2
|
import shutil
shutil.copystat( 'f1.log' , 'f2.log' )
|
shutil.copy(src,dst):
拷贝文件和权限
1
2
|
import shutil
shutil.copy( 'f1.log' , 'f2.log' )
|
shutil.copy2(src,dst):
拷贝文件和状态信息
1
2
|
import shutil
shutil.copy2( 'f1.log' , 'f2.log' )
|
shutil.copytree(src,det,symlinks=False,ignore=None):
递归的去拷贝文件
1
2
|
import shutil
shutil.copytree( 'folder1' , 'folder2' , ignore = shutil.ignore_patterns( '*.pyc' , 'tmp*' ))
|
shutil.rmtree(path[,ignore_errors[,onerror]]):
递归的去删除文件
1
2
|
import shutil
shutil.rmtree( 'folder1' )
|
shutil.move(src,dst):
递归的去移动文件(重命名)
1
2
|
import shutil
shutil.move( 'folder1' , 'folder3' )
|
shutil.make_archive(base_name, format,...): 创建压缩包并返回文件路径,例如:zip、tar
base_name: 压缩包的文件名,也可以是压缩包的路径。只是文件名时,则保存至当前目录,否则保存至指定路径(例:Presley=>保存至当前路径,/User/Presley =>保存至/Users/路径下)
format: 压缩包种类,“zip”, “tar”, “bztar”,“gztar”
root_dir: 要压缩的文件夹路径(默认当前目录)
owner: 用户,默认当前用户
group: 组,默认当前组
1
2
|
import shutil
z = shutil.make_archive( 'presly' , 'gztar' , root_dir = 'D:\软件下载' )
|
shutil对压缩包的处理,也可调用zipfile或tarfile模块进行压缩
以上所述是小编给大家介绍的Python_shutil模块详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.cnblogs.com/Vera-y/p/9671535.html