Python解压同一个目录下的所有压缩包
初衷
在学习黑马程序员课程的时候,由于压缩包很多,需要一个一个解压特别麻烦,所以写了一个脚本来一次性解压所有的压缩包。
import zipfile
import tarfile
import rarfile
import os
import shutil
import sys
"""unzip zip file"""
def un_zip(path,file_name):
if (file_name.find(".zip")) > -1:
zip_file = zipfile.ZipFile(path+file_name)
a_name = zip_file.namelist()
elif (file_name.find(".tar")) > -1:
zip_file = tarfile.open(path+file_name)
a_name = zip_file.getnames()
elif (file_name.find(".rar")) > -1:
zip_file = rarfile.RarFile(path+file_name)
a_name = zip_file.namelist()
else:
return
new_path = path
unzipDir = os.path.splitext(file_name)[0]
print("unzipDir:", unzipDir)
print("new_path:", new_path+unzipDir)
if os.path.isdir(new_path+unzipDir):
pass
else:
os.makedirs(new_path+unzipDir)
for names in a_name:
print("names:",names)
zip_file.extract(names,new_path)
zip_file.close()
print(file_name +"解压完成!")
# 这里修改解压的目录
path = "D:/learning/就业/黑马程序员/20天学会java—资料/"
files = os.listdir(path)
for file_name in files:
un_zip(path,file_name)