GNU Info

Info Node: (python2.1-lib.info)gzip

(python2.1-lib.info)gzip


Next: zipfile Prev: zlib Up: Optional Operating System Services
Enter node , (file) or (file)node

Support for `gzip' files
========================

Interfaces for `gzip' compression and decompression using file objects.

The data compression provided by the `zlib' module is compatible with
that used by the GNU compression program `gzip'.  Accordingly, the
`gzip' module provides the `GzipFile' class to read and write
`gzip'-format files, automatically compressing or decompressing the
data so it looks like an ordinary file object.  Note that additional
file formats which can be decompressed by the `gzip' and `gunzip'
programs, such as those produced by `compress' and `pack', are not
supported by this module.

The module defines the following items:

`GzipFile([filename[, mode[, compresslevel[, fileobj]]]])'
     Constructor for the `GzipFile' class, which simulates most of the
     methods of a file object, with the exception of the `seek()' and
     `tell()' methods.  At least one of FILEOBJ and FILENAME must be
     given a non-trivial value.

     The new class instance is based on FILEOBJ, which can be a regular
     file, a `StringIO' object, or any other object which simulates a
     file.  It defaults to `None', in which case FILENAME is opened to
     provide a file object.

     When FILEOBJ is not `None', the FILENAME argument is only used to
     be included in the `gzip' file header, which may includes the
     original filename of the uncompressed file.  It defaults to the
     filename of FILEOBJ, if discernible; otherwise, it defaults to the
     empty string, and in this case the original filename is not
     included in the header.

     The MODE argument can be any of `'r'', `'rb'', `'a'', `'ab'',
     `'w'', or `'wb'', depending on whether the file will be read or
     written.  The default is the mode of FILEOBJ if discernible;
     otherwise, the default is `'rb''.  Be aware that only the `'rb'',
     `'ab'', and `'wb'' values should be used for cross-platform
     portability.

     The COMPRESSLEVEL argument is an integer from `1' to `9'
     controlling the level of compression; `1' is fastest and produces
     the least compression, and `9' is slowest and produces the most
     compression.  The default is `9'.

     Calling a `GzipFile' object's `close()' method does not close
     FILEOBJ, since you might wish to append more material after the
     compressed data.  This also allows you to pass a `StringIO' object
     opened for writing as FILEOBJ, and retrieve the resulting memory
     buffer using the `StringIO' object's `getvalue()' method.

`open(filename[, mode[, compresslevel]])'
     This is a shorthand for `GzipFile(FILENAME,' `MODE,'
     `COMPRESSLEVEL)'.  The FILENAME argument is required; MODE
     defaults to `'rb'' and COMPRESSLEVEL defaults to `9'.

See also:
     Note: zlib The basic data compression module needed to support
     the `gzip' file format.


automatically generated by info2www version 1.2.2.9