在python怎么做存档机制_python – 使用Zipfile创建存档

这篇博客介绍了如何在Python中使用Zipfile模块创建存档。通过示例代码解释了如何遍历目录并将文件添加到ZIP文件中,包括定义zipdir函数和处理zip文件的细节。最后,将生成的ZIP文件重命名为带时间戳的名称。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个帖子已经部分回答了这个问题:

但是,我想澄清一下,因为它与问题没有直接关系,我在这里问.我是python的新手,并且一直在吸收关于这个主题的各种文本,并且通过这里的答案尽可能彻底地查看,但我甚至不确定如何提出这个问题.

当我调用函数zipdir()时,我必须添加参数. ‘path’参数很简单,但我不知道要把什么作为ziph参数?我甚至不确定它在寻找什么

#!/usr/bin/env python

import os

import zipfile

toDirectory = ".\\Py\Backup"

fileName = int(time.time())

def zipdir(path, ziph):

# ziph is zipfile handle

for root, dirs, files in os.walk(path):

for file in files:

ziph.write(os.path.join(root, file))

if __name__ == '__main__':

zipf = zipfile.ZipFile('Python.zip', 'w', zipfile.ZIP_DEFLATED)

zipdir('tmp/', zipf)

zipf.close()

def fileRename():

os.renames('Python.zip', fileName + ".zip")

zipdir(toDirectory, ziph) #this is where I am not sure what to do with 'ziph'

fileRename() # Even thought he code create the zip, this does not work

最佳答案 一个更简单的例子可以帮助您了解正在发生的事情.

import os

import zipfile

def zipdir(path, ziph):

# ziph is zipfile handle

for root, dirs, files in os.walk(path):

for file in files:

ziph.write(os.path.join(root, file))

zipf = zipfile.ZipFile('Python.zip', 'w', zipfile.ZIP_DEFLATED)

zipdir('.', zipf)

zipf.close()

上面的代码压缩当前目录中的文件,并创建包含存档文件的zipfile Python.zip.

ziph是你传递zipf并写入zip文件的参数.

在您的示例中,您可能想要这样:

import os

import zipfile

import time

toDirectory = ".\\Py\Backup"

fileName = int(time.time())

def zipdir(path, ziph):

# ziph is zipfile handle

for root, dirs, files in os.walk(path):

for file in files:

ziph.write(os.path.join(root, file))

zipf = zipfile.ZipFile('Python.zip', 'w', zipfile.ZIP_DEFLATED)

zipdir('tmp/', zipf)

zipf.close()

os.renames('Python.zip', str(fileName) + ".zip")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值