mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 11:49:12 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
\section{Built-in Module \sectcode{gzip}}
 | 
						|
\label{module-gzip}
 | 
						|
\bimodindex{gzip}
 | 
						|
 | 
						|
The data compression provided by the \code{zlib} module is compatible
 | 
						|
with that used by the GNU compression program \file{gzip}.
 | 
						|
Accordingly, the \code{gzip} module provides the \code{GzipFile} class
 | 
						|
to read and write \file{gzip}-format files, automatically compressing
 | 
						|
or decompressing the data so it looks like an ordinary file object.
 | 
						|
 | 
						|
\code{GzipFile} objects simulate most of the methods of a file
 | 
						|
object, though it's not possible to use the \code{seek()} and
 | 
						|
\code{tell()} methods to access the file randomly.
 | 
						|
 | 
						|
\renewcommand{\indexsubitem}{(in module gzip)}
 | 
						|
\begin{funcdesc}{open}{fileobj\optional{\, filename\optional{\, mode\, compresslevel}}}
 | 
						|
  Returns a new \code{GzipFile} object on top of \var{fileobj}, which
 | 
						|
  can be a regular file, a \code{StringIO} object, or any object which
 | 
						|
  simulates a file.
 | 
						|
 | 
						|
  The \file{gzip} file format includes the original filename of the
 | 
						|
  uncompressed file; when opening a \code{GzipFile} object for
 | 
						|
  writing, it can be set by the \var{filename} argument.  The default
 | 
						|
  value is \code{"GzippedFile"}.
 | 
						|
 | 
						|
  \var{mode} can be either \code{'r'} or \code{'w'} depending on
 | 
						|
  whether the file will be read or written.  \var{compresslevel} 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 value of
 | 
						|
  \var{compresslevel} is 9.
 | 
						|
 | 
						|
  Calling a \code{GzipFile} object's \code{close()} method does not
 | 
						|
  close \var{fileobj}, since you might wish to append more material
 | 
						|
  after the compressed data.  This also allows you to pass a
 | 
						|
  \code{StringIO} object opened for writing as \var{fileobj}, and
 | 
						|
  retrieve the resulting memory buffer using the \code{StringIO}
 | 
						|
  object's \code{getvalue()} method.
 | 
						|
\end{funcdesc}
 | 
						|
 | 
						|
\begin{seealso}
 | 
						|
\seemodule{zlib}{the basic data compression module}
 | 
						|
\end{seealso}
 | 
						|
 |