¿Cómo crear un archivo zip en memoria con directorios sin tocar el disco?

En una aplicación web de Python, estoy empaquetando algunas cosas en un archivo zip. Quiero hacer esto completamente sobre la marcha, en memoria, sin tocar el disco. Esto funciona bien con ZipFile.writestr siempre que esté creando una estructura de directorio plana, pero ¿cómo puedo crear directorios dentro del zip?

Estoy usando python2.4.

http://docs.python.org/library/zipfile.html

Respuestas a la pregunta(2)

Su respuesta a la pregunta