优草派  >   Python

python解压目录?

黄佳怡            来源:优草派

解压是常见的操作,但有时需要对多个压缩文件批量解压,这时可以使用python进行自动化解压。本文将从多个角度介绍如何使用python解压目录。

python解压目录?

一、使用python zipfile模块解压单个文件

通过import zipfile导入zipfile模块,使用该模块的zipfile.ZipFile(filename[,mode[,compression[,allowZip64]]])方法打开要解压的文件,然后使用zipfile对象的extractall([path[,members[,pwd]]])方法解压文件。示例代码如下:

import zipfile

zip_file = zipfile.ZipFile('test.zip')

zip_file.extractall()

zip_file.close()

二、使用python zipfile模块解压整个目录

在解压多个压缩文件时,可以使用os模块遍历整个目录,通过判断文件类型来筛选出所有需要解压的压缩文件地址,并用zipfile模块解压。示例代码如下:

import os

import zipfile

def unzip_all_files_in_path(path):

for root, dirs, files in os.walk(path):

for file in files:

if file.endswith('.zip'):

filepath = os.path.join(root,file)

zip_file = zipfile.ZipFile(filepath)

zip_file.extractall()

zip_file.close()

unzip_all_files_in_path('test')

三、使用python shutil模块解压整个目录

shutil模块还提供了解压tar、tar.gz、tar.bz2、zip等多种压缩文件的方法,使用其中的shutil.unpack_archive(filename,extract_dir=None,format=None)方法,我们可以方便地解压整个目录下的所有压缩文件。示例代码如下:

import shutil

path = 'test'

for filename in os.listdir(path):

filepath = os.path.join(path, filename)

if os.path.isfile(filepath):

shutil.unpack_archive(filepath)

四、使用python 7zip解压文件

python中还有一个第三方包py7zr,可以用于解压7z文件,使用比较简洁。示例代码如下:

import py7zr

with py7zr.SevenZipFile('test.7z', mode='r') as z:

z.extractall()

摘要:本文介绍了如何使用python解压目录,详细介绍了使用zipfile模块解压单个文件、解压整个目录,使用shutil模块和py7zr模块解压整个目录,是python爬虫和办公自动化中常用的技巧之一。

关键词:python解压、zipfile模块、shutil模块、py7zr模块、自动化解压

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行