Skip to main content
 首页 » 编程设计

python之在python中将文本写入zipfile

2025年05月04日32zdz8207

我有一个函数可以创建一个包含文本文件的 zip 存档。 是否可以在不创建临时文件的情况下执行此操作?

import zipfile 
import os 
 
PROJ_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__))) 
 
 
def create_zip(name, text): 
    with open(os.path.join(PROJ_DIR, "_tmp_file_"), "w+") as f:  
        f.write(text) 
 
    zf = zipfile.ZipFile(os.path.join(PROJ_DIR, "%s.zip" % name), "w", 
                         zipfile.ZIP_DEFLATED) 
    zf.write(os.path.join(PROJ_DIR, "_tmp_file_"), "/file.txt") 
    zf.close() 

请您参考如下方法:

可以用writestr代替write,一个例子

zf.writestr('/file.txt', text) 

documentation .