python自动化开发-6

时间:2023-03-09 06:20:45
python自动化开发-6

python的常用模块(续)

shutil模块:主要是做文件复制的。文件,文件夹,压缩包等的处理模块。

  常用的方法:

    shutil.copyfileobj:将文件的内容拷贝到另一个文件中。

      例子:          

 # Author:RYB
# __*__coding:utf-8__*__
import shutil
f = open("access.log")
f2 = open("access_new.log","w")
shutil.copyfileobj(f,f2)

运行结果:

python自动化开发-6

      shutil.copyfile:直接复制文件名字。

        例子:          

 import shutil
#直接复制文件名
shutil.copyfile("access.log","access_new2.log")

运行结果:

  python自动化开发-6

      shutil.copymode:只拷贝文件的权限。

     shutil.copytree:递归拷贝文件(可以过滤哪些文件不需要拷贝)。

     shutil.rmtree:递归的去删除文件。

     shutil.move:递归移动文件。

     shutil.make_archive:创建压缩包并返回文件路径。比如:tar,zip等。。。。。

     例子:      

 import shutil
shutil.make_archive("day5","zip","D:\s16\day5")

运行结果:

python自动化开发-6

shutil模块对压缩包的处理是调用ZipFile,TarFile两个模块来进行的。

     zipfile模块

    例子:压缩      

 import zipfile
a=zipfile.ZipFile("test1.zip","w")
a.write("D:\\s16\day5\\access.log.1",arcname="access.log.1")
a.write("D:\\s16\day5\\access.log.2",arcname="access.log.2")
a.close()

运行结果:

python自动化开发-6

     例子:解压,把包里的某个文件解压出来。      

 import zipfile
#解压
a=zipfile.ZipFile("test1.zip","r")
a.extract("access.log.1")

运行结果:

python自动化开发-6

     例子:解压包里的所有文件到指定目录(路径)下。      

 import zipfile
a=zipfile.ZipFile("test1.zip","r")
a.extractall(path="D:\est11")

运行结果:

python自动化开发-6