NameError: "global name 'ZIP_STORED' is not defined"

NameError: "global name 'ZIP_STORED' is not defined"

我在 python 中使用 zipfile 模块是这样的:

from zipfile import ZipFile

我有一个方法可以像这样使用这个库:

def compress(self, filename, data):
    inMemoryOutputFile = StringIO()
    zipFile = ZipFile(inMemoryOutputFile, 'w', ZIP_STORED)
    zipFile.writestr(filename, data)
    zipFile.close()
    inMemoryOutputFile.seek(0)
    return inMemoryOutputFile

但是,为什么我会收到此错误:

NameError: "global name 'ZIP_STORED' is not defined"?

ZIP_STORED 不应该在全局命名空间中吗?

只需添加

from zipfile import ZIP_STORED

到您的导入,或将您的导入替换为

from zipfile import *

将所有符号从 zipfile 导入到当前命名空间。