如何在函数中写入已关闭的 zip 文件夹? [复制]
Posted
技术标签:
【中文标题】如何在函数中写入已关闭的 zip 文件夹? [复制]【英文标题】:How do I write to a closed zip folder in a function? [duplicate] 【发布时间】:2021-01-10 15:20:53 【问题描述】:我想将 json 文件写入函数中的 zip 文件夹 问题是:在函数结束时,我必须关闭 zip,所以当我重新运行函数并将另一个 json 保存到它时,它不会保存为已关闭。 我是超级初学者,谁能给点方向/指导?
def ExportJson(files):
now = datetime.now()
now_date = now.strftime("%d%m%y")
# new json name
new_json_name = now_date + new_fname + ".json"
# saves dataframe to json
files.to_json(new_json_name)
# new zip file name
new_zip_name = work_dir + "/" + new_fname + ".zip"
# Create new zip file
zip_file = zipfile.ZipFile(new_zip_name, 'w', zipfile.ZIP_DEFLATED)
# Write json to zip
zip_file.write(new_json_name)
zip_file.close()
【问题讨论】:
【参考方案1】:def export_json(files):
now = datetime.now()
now_date = now.strftime("%d%m%y")
new_fname = 'temp' + now_date
# new json name
new_json_name = new_fname + ".json"
# new zip file name
new_zip_name = new_fname + ".zip"
with zipfile.ZipFile(new_zip_name, 'w', zipfile.ZIP_DEFLATED) as myzip:
myzip.writestr(new_json_name, files.to_json())
【讨论】:
以上是关于如何在函数中写入已关闭的 zip 文件夹? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用win32 CreateProcess函数等到孩子完成写入文件