如下图本来只压缩一个文件结果这个文件所在的路径全都被压缩进去啦
下面是解决方法yadir='D:/databak/'
zipfilepath='D:/zipfile.zip'
filelists = os.listdir(yadi)
if filelists == None or len(filelists)
print (">>>>>>待压缩的文件目录:" + yadir + " 里面不存在文件,无需压缩. <<<<<
else:
z = zipfile.ZipFile(zipfilepath, 'w' ,zipfile.ZIP_DEFLATED)
for fil in filelists:
filefullpath = os.path.join(yadir, fil)
# filefullpath是文件的全路径,fil是文件名,这样就不会带目录啦
z.write(filefullpath, fil)
z.close()
注意z.write的第二个参数如果直接给个文件名的话是无效的要加个相对路径如 './'+ test.txt