我正在使用Python标准库zipfile来测试一个压缩文件:
zf = zipfile.ZipFile(archive_name)
if zf.testzip()==None: checksum_OK=True
我遇到了这个运行时异常:
File "./packaging.py", line 36, in test_wgt
if zf.testzip()==None: checksum_OK=True
File "/usr/lib/python2.7/zipfile.py", line 844, in testzip
f = self.open(zinfo.filename, "r")
File "/usr/lib/python2.7/zipfile.py", line 915, in open
"password required for extraction" % name
RuntimeError: File xxxxx/xxxxxxxx.xxx is encrypted, password required for extraction
在运行testzip()之前,我如何测试zip文件是否已加密?我没有发现可以使这项工作更简单的异常可供捕获。
catch
,而是except
。如果查看源代码会得到额外的1分。 - mgilson#RuntimeError for other reasons...
改为raise e#未知RuntimeError
-- 这只是为了演示您可以重新引发您捕获的异常。 - mgilsonexcept RuntimeError, e:
。 - Eduard Florinescu