python解压后缀名为python7z的压缩包控制台实时显示进度解压到C完整pythoon代码
以下是一个使用Python标准库中的tarfile模块解压缩后缀名为python.7z的压缩包,并实时显示进度的例子:
import tarfile
import os
filename = "python.7z"
output_folder = "C:\\"
with tarfile.open(filename, "r:xz") as tar:
# 获取压缩包中文件总数
total_files = len(tar.getmembers())
# 遍历压缩包中的所有文件,解压缩到output_folder
for i, member in enumerate(tar.getmembers()):
tar.extract(member, output_folder)
# 计算解压缩进度并输出到控制台
progress = (i + 1) / total_files
print(f"Extraction progress: {progress:.2%}", end="\r")
print("Extraction completed!")
这里使用了tarfile模块来解压缩文件,因为7z格式的压缩包也可以通过该模块进行解压缩。代码中的r:xz参数表示使用xz解压缩器来解压缩文件。
压缩包中的文件总数可以通过len(tar.getmembers())获取,遍历压缩包中的所有文件时,可以通过enumerate()函数获取当前文件的索引,从而计算出解压缩进度。最后通过print()函数将进度输出到控制台,end="\r"表示不换行,覆盖上一次输出,从而实现实时更新进度。
解压缩完成后,输出"Extraction completed!"
原文地址: https://www.cveoy.top/t/topic/fuXa 著作权归作者所有。请勿转载和采集!