你可以使用Python内置的os和zipfile模块来完成这个任务。下面是一个示例代码:
import os
import zipfile
# 定义一个函数来解压.zip文件
def unzip_file(zip_file_path, save_path):
with zipfile.ZipFile(zip_file_path, 'r') as zip_ref:
zip_ref.extractall(save_path)
# 定义一个函数来遍历目录并解压.zip文件
def unzip_all_zip_files(directory_path, save_path):
"""
intro:
find all the files end with .zip and unzip these files to the `save_path`.
args:
:param str directory_path: find all .zip in this path.
:param str save_path: store the files in this path.
return:
void.
"""
for root, dirs, files in os.walk(directory_path):
for file in files:
if file.endswith('.zip'):
# 解压文件到当前文件夹
unzip_file(os.path.join(root, file), save_path)
if __name__=="__main__":
# 使用示例
path = "/Volumes/ymz/_paper_with_code_and_data/3_microDL/data/S-BIAD25/mouse/_retardance"
save_path = "/Volumes/ymz/_paper_with_code_and_data/3_microDL/data/S-BIAD25/mouse/_retardance/_all"
unzip_all_zip_files(path, save_path)
这个代码会遍历指定的目录(包括子目录)中的所有文件,如果文件名以.zip结尾,则调用unzip_file函数将其解压到当前文件夹。