【发布时间】:2013-05-07 19:31:26
【问题描述】:
如何在 python 中压缩文件以及如何指定压缩级别?
到目前为止,我有以下代码,我得到的错误是:
Zip("log4j.dl-service.log.2013-05-03-22",9)
AttributeError: 'str' object has no attribute 'ZipFile'
代码:
import zipfile
import fileinput
def Zip(file,level):
"""
This function uses the zip library native to python to compress files with
Usage: Zip(file,level)
"""
if file and level:
try:
zipfile = file+'.zip'
output = zipfile.ZipFile(zipfile, 'wb')
for line in fileinput.input(file):
output.write(line)
output.close()
if os.path.exists(zipfile):
return zipfile
else:
logMe('critical',"zip failed in Zip()")
return False
except Exception,e:
logMe('critical',e)
【问题讨论】:
-
答:不要使用与你的导入相同的变量名,这只是自找麻烦。 B:不要使用与您的导入相同的变量名称,这会导致无法读取。 C:不要使用与导入相同的变量名。
-
@JeffLangemeier:你应该把它写成答案(包含更多信息),因为……嗯,这就是答案。
-
@SimplySeth:请发布整个回溯,而不仅仅是错误消息。在这种情况下,我们可以很容易地猜测,因为碰巧只有一个地方您尝试访问任何东西上名为
ZipFile的属性,但为什么让我们猜测呢?