The basic problem is that the zipfile interface only reads and writes whole files, so it may perform poorly or fail on huge files. At one time I implemented a patch to allow reading files in chunks. However I believe that the current interface has too many problems to solve by incremental patching, and that a zipfile2 module is probably warranted. (Is anyone working on this?)
In the meantime I think the best solution is often to just run an external zip/unzip utility to do the heavy lifting. -- http://mail.python.org/mailman/listinfo/python-list