将多个文件压缩成 python 中的 bz2 文件
compress multiple files into a bz2 file in python
我需要在python中将多个文件压缩成一个bz2文件。
我正在尝试找到一种方法,但找不到答案。
可能吗?
看看 python 的 bz2 库。确保 google 并先阅读文档!
https://docs.python.org/2/library/bz2.html#bz2.BZ2Compressor
这就是 tar球的用途。 tar
格式将文件打包在一起,然后压缩结果。 Python 使用 the tarfile
module 可以很容易地同时执行这两项操作,其中传递 'w:bz2'
的 "mode" 会打开一个新的 tar 文件,以便使用无缝 [=15] 进行写入=]压缩。超级简单的例子:
import tarfile
with tarfile.open('mytar.tar.bz2', 'w:bz2') as tar:
for file in mylistoffiles:
tar.add(file)
如果您不需要对操作进行太多控制,shutil.make_archive
可能是一个可能的替代方案,它将压缩整个目录树的代码简化为:
shutil.make_archive('mytar', 'bztar', directory_to_compress)
您有以下的导入包:
import tarfile,bz2
并以 bz 格式压缩多文件
tar = tarfile.open("save the directory.tar.bz", "w:bz2")
for f in ["gti.png","gti.txt","file.taz"]:
tar.add(os.path.basename(f))
tar.close()
让我们使用 zip 格式在一个目录中打开文件
一次使用
os.path.basename(src_file)
只打开一个文件
我需要在python中将多个文件压缩成一个bz2文件。 我正在尝试找到一种方法,但找不到答案。 可能吗?
看看 python 的 bz2 库。确保 google 并先阅读文档!
https://docs.python.org/2/library/bz2.html#bz2.BZ2Compressor
这就是 tar球的用途。 tar
格式将文件打包在一起,然后压缩结果。 Python 使用 the tarfile
module 可以很容易地同时执行这两项操作,其中传递 'w:bz2'
的 "mode" 会打开一个新的 tar 文件,以便使用无缝 [=15] 进行写入=]压缩。超级简单的例子:
import tarfile
with tarfile.open('mytar.tar.bz2', 'w:bz2') as tar:
for file in mylistoffiles:
tar.add(file)
如果您不需要对操作进行太多控制,shutil.make_archive
可能是一个可能的替代方案,它将压缩整个目录树的代码简化为:
shutil.make_archive('mytar', 'bztar', directory_to_compress)
您有以下的导入包:
import tarfile,bz2
并以 bz 格式压缩多文件
tar = tarfile.open("save the directory.tar.bz", "w:bz2")
for f in ["gti.png","gti.txt","file.taz"]:
tar.add(os.path.basename(f))
tar.close()
让我们使用 zip 格式在一个目录中打开文件
一次使用
os.path.basename(src_file)
只打开一个文件