我试图在这里做一个程序我需要压缩一些文件,但我希望它在文件不存在时停止。 代码工作,但问题是它无论如何压缩文件,我的意思是程序输出错误但压缩具有该名称的文件(空文件)
如果有人可以提供帮助就会很棒:)
import sys, zipfile
def compress (file):
try:
zf = zipfile.ZipFile(file + '.zip', mode='w')
zf.write(file, compress_type=zipfile.ZIP_DEFLATED)
zf.close()
except OSError:
print("The file "+ file + " doesnt exist!")
#erro.value = 1
if __name__ == "__main__":
compress(sys.argv[1])
答案 0 :(得分:1)
如果使用'w','x'或'a'模式创建文件,然后关闭而不向存档添加任何文件,则会将空存档的相应ZIP结构写入文件。
所以使用
if os.path.exists(file)
在
之前检查文件是否存在zf = zipfile.ZipFile(file + '.zip', mode='w')