Python中使用zipfile()模块将ZIP文件加密的方法
发布时间:2023-12-30 13:54:33
在Python中,使用zipfile模块可以操作ZIP文件。如果需要将ZIP文件加密,可以使用zipfile模块中的setpassword()方法来设置密码。下面是一个使用zipfile模块将ZIP文件加密的例子:
import zipfile
def encrypt_zip(file_path, password):
# 创建一个新的ZIP文件,并设置密码
with zipfile.ZipFile(file_path, mode='w') as zf:
zf.setpassword(password)
# 需要被压缩的文件列表
files_to_zip = ['file1.txt', 'file2.txt', 'file3.txt']
# 将文件逐个添加到ZIP压缩包中
for file in files_to_zip:
zf.write(file, arcname=file)
print(f"ZIP文件 {file_path} 已加密并保存成功。")
# 调用例子
encrypt_zip('encrypted.zip', 'mypassword')
在上述例子中,首先通过创建一个ZipFile对象来打开一个ZIP文件,并通过mode='w'参数设置了写入模式。然后,使用setpassword()方法将密码mypassword设置到ZIP文件中。
接下来,我们通过遍历文件列表的方式,将每个文件添加到ZIP文件中。write()方法的 个参数是文件名,第二个参数是以文件名为目标的压缩文件中的文件名。
最后,通过在with代码块外部使用print语句,我们打印出了成功将ZIP文件加密的消息。
需要注意的是,加密ZIP文件时,需要确保密码足够安全,并且需要妥善保管密码以避免遗失。 另外,加密只能对整个ZIP文件进行操作,而无法对单个文件进行加密和解密。
