Несмотря на то, что этот вопрос старый, он все еще высоко отражен в результатах поиска в Google, поэтому я просто хочу вмешаться, чтобы сказать, что я заметил, что на Python 3.4 64bit в Windows zz-файл lzma является поточно-ориентированным; все остальные терпят неудачу.
with zipfile.ZipFile("test.zip", "w", zipfile.ZIP_LZMA) as zip:
#do stuff in threads
Обратите внимание, что вы не можете связать один и тот же файл с несколькими экземплярами zipfile.ZipFile, вместо этого вы должны использовать один и тот же файл во всех потоках; здесь это переменная с именем zip.
В моем случае я получаю около 80-90% использования ЦП на 8 ядрах и SSD, что приятно.