Back to Kbengine

:mod:`uu` --- Encode and decode uuencode files

kbe/src/lib/python/Doc/library/uu.rst

2.5.122.5 KB
Original Source

:mod:uu --- Encode and decode uuencode files

.. module:: uu :synopsis: Encode and decode files in uuencode format.

.. moduleauthor:: Lance Ellinghouse

Source code: :source:Lib/uu.py


This module encodes and decodes files in uuencode format, allowing arbitrary binary data to be transferred over ASCII-only connections. Wherever a file argument is expected, the methods accept a file-like object. For backwards compatibility, a string containing a pathname is also accepted, and the corresponding file will be opened for reading and writing; the pathname '-' is understood to mean the standard input or output. However, this interface is deprecated; it's better for the caller to open the file itself, and be sure that, when required, the mode is 'rb' or 'wb' on Windows.

.. index:: single: Jansen, Jack single: Ellinghouse, Lance

This code was contributed by Lance Ellinghouse, and modified by Jack Jansen.

The :mod:uu module defines the following functions:

.. function:: encode(in_file, out_file, name=None, mode=None, *, backtick=False)

Uuencode file in_file into file out_file. The uuencoded file will have the header specifying name and mode as the defaults for the results of decoding the file. The default defaults are taken from in_file, or '-' and 0o666 respectively. If backtick is true, zeros are represented by '`' instead of spaces.

.. versionchanged:: 3.7 Added the backtick parameter.

.. function:: decode(in_file, out_file=None, mode=None, quiet=False)

This call decodes uuencoded file in_file placing the result on file out_file. If out_file is a pathname, mode is used to set the permission bits if the file must be created. Defaults for out_file and mode are taken from the uuencode header. However, if the file specified in the header already exists, a :exc:uu.Error is raised.

:func:decode may print a warning to standard error if the input was produced by an incorrect uuencoder and Python could recover from that error. Setting quiet to a true value silences this warning.

.. exception:: Error()

Subclass of :exc:Exception, this can be raised by :func:uu.decode under various situations, such as described above, but also including a badly formatted header, or truncated input file.

.. seealso::

Module :mod:binascii Support module containing ASCII-to-binary and binary-to-ASCII conversions.