Gabriel Genellina gagsl-py2 at
Fri Jul 3 03:28:37 CEST 2009

En Thu, 02 Jul 2009 17:57:49 -0300, superpollo <user at> escribió:

> why the following does not work? can you help me correct (if possible)?

Explain "does not work" please. Does it raise an exception? Which one?
Please post the complete traceback. You don't get the expected result?
Tell us what did you expect and what you actually get. If you provide this
information, it's a lot easier for people to look at your problem and
eventually find a solution.

Fortunately my crystall ball is back from the repair shop and I can guess
that you want to create a tar file in memory, and add some content from a
memory buffer too, right?
I didn't run your code but I can see two problems:

>        5 tf = StringIO.StringIO()
>        6 tar = , "w")

The first argument to is the *name* of the file to
open/create. In this case you don't have a real file, but a StringIO
object; use the fileobj argument instead:,

>        7 for name in [sf1 , sf2]:
>        8     tar.add(name)

The add method takes the *name* of a file to add to the archive. Again,
you don't have a real file to add; try the addfile method instead.

Gabriel Genellina

More information about the Python-list mailing list