温馨提示×

在Python里如何异步解压zip文件

小樊
166
2024-12-07 13:48:40
栏目: 编程语言

在Python中,您可以使用aiofiles库来异步解压ZIP文件。首先,确保安装了aiofiles库:

pip install aiofiles 

然后,您可以使用以下代码异步解压ZIP文件:

import aiofiles import asyncio import zipfile async def unzip_async(zip_file_path, dest_path): async with aiofiles.open(zip_file_path, mode='rb') as f: zip_content = await f.read() with zipfile.ZipFile(io.BytesIO(zip_content)) as zip_ref: zip_ref.extractall(dest_path) async def main(): zip_file_path = 'example.zip' dest_path = 'extracted_files' await unzip_async(zip_file_path, dest_path) print(f"ZIP file {zip_file_path} has been unzipped to {dest_path}") if __name__ == '__main__': asyncio.run(main()) 

在这个示例中,我们首先使用aiofiles库异步读取ZIP文件的内容。然后,我们将ZIP内容放入一个BytesIO对象,以便将其作为文件对象传递给zipfile模块。最后,我们使用zipfile模块的extractall方法将ZIP文件解压到指定的目标目录。

0