如何使用7zip的,而不是压缩压缩,密码变更
我有与拉链特定文件夹中的每个文件压缩代码,但我想用7zip的压缩,所以怎么办呢?如何使用7zip的,而不是压缩压缩,密码变更
这是我到目前为止有:
for date in dict_date:#zipping folders and get same name like the folder
with ZipFile(os.path.join(src, '{0}.7z'.format(date)), 'w') as myzip:
for subFolder in dict_date[date]:
for fil in os.listdir(os.path.join(src, date, subFolder)):
if not fil.endswith('.7z'):
myzip.write(os.path.join(src, date, subFolder, fil))
您可以尝试在命令行方式
import subprocess
subprocess.call(['7z', 'a', filename+'.7z', filename])
或文件夹中的所有文件
subprocess.call(['7z', 'a', filename+'.7z', "*.*"])
以及如何将其落实到我的代码? – zeromancer 2012-07-13 09:10:28
它不起作用。 – zeromancer 2012-07-13 09:30:46
谁使用了'.7zip'扩展?每个我见过的7-zip文件都是'.7z'。 – 2014-09-15 05:38:45
有不似乎是一个很好的Python模块用于创建7Z压缩文件(不管什么文件说只,py7zlib能阅读他们)。
解决方法是下载7z SDK(http://www.7-zip.org/sdk.html)并使用通过子进程模块附带的7zr可执行文件。 7z属于公共领域,因此您可以不受限制地执行此独立程序。
那么https://github.com/dsoprea/PyEasyArchive呢? – Winand 2016-05-19 06:31:31
它似乎可以在Linux上工作 - 但不是Windows。 – 2016-05-26 13:28:01
更改文件扩展不会改变使用的文件格式,也没有压缩算法。您将不得不通过子进程调用来调用7zip命令行客户端。 – 2012-07-13 08:14:47
我知道,我需要一个例子。 – zeromancer 2012-07-13 09:01:10