Документация Python неофициальный перевод

18.16. uu – Кодирование и декодирование uuencode-файловuu – Encode and decode uuencode files

Исходный код: Lib/uu.py


Этот модуль кодирует и декодирует файлы в формате uuencode, позволяя передавать произвольные двоичные данные по ASCII-соединениям. Везде, где ожидается файловый аргумент, методы принимают файлоподобный объект. Для обратной совместимости также принимается строка, содержащая путь к файлу, и соответствующий файл будет открыт для чтения и записи; путь '-' понимается как обозначение стандартного ввода или вывода. Однако этот интерфейс устарел; лучше, чтобы вызывающий код сам открывал файл и убедился, что при необходимости режим равен 'rb' или 'wb' в Windows.

Этот код был предоставлен Лэнсом Эллингхаусом и доработан Джеком Янсеном.

Модуль uu определяет следующие функции:

uu.encode(in_file, out_file[, name[, mode]])

Кодирует файл in_file в файл out_file в формате uuencode. Закодированный файл будет содержать заголовок, указывающий name и mode как значения по умолчанию для результатов декодирования файла. Значения по умолчанию берутся из in_file, или из '-' и 0666 соответственно.

uu.decode(in_file[, out_file[, mode[, quiet]]])

Этот вызов декодирует uuencode-файл in_file и помещает результат в файл out_file. Если out_file является путём, то mode используется для установки битов разрешений, если файл должен быть создан. Значения по умолчанию для out_file и mode берутся из заголовка uuencode. Однако, если файл, указанный в заголовке, уже существует, возбуждается uu.Error.

decode() может выводить предупреждение в стандартный поток ошибок, если входные данные были созданы некорректным uuencoder'ом и Python смог восстановиться после этой ошибки. Установка quiet в истинное значение подавляет это предупреждение.

exception uu.Error

Подкласс Exception, может быть возбуждён с помощью uu.decode() в различных ситуациях, таких как описанные выше, а также при неправильно отформатированном заголовке или обрезанном входном файле.

См. также

Модуль binascii

Вспомогательный модуль, содержащий преобразования ASCII-в-двоичный и двоичный-в-ASCII.