uu.md
1> **Источник:** https://python-all.ru/3.5/library/uu.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# 19.10. [`uu`](https://python-all.ru/3.5/library/uu.html#module-uu) – Кодирование и декодирование uuencode-файлов89**Исходный код:** [Lib/uu.py](https://python-all.ru/src/3.5/Lib/uu.py)1011---1213Этот модуль кодирует и декодирует файлы в формате uuencode, позволяя передавать произвольные двоичные данные по ASCII-соединениям. Везде, где ожидается файловый аргумент, методы принимают файлоподобный объект. Для обратной совместимости также принимается строка, содержащая путь к файлу, и соответствующий файл будет открыт для чтения и записи; путь `'-'` понимается как обозначение стандартного ввода или вывода. Однако этот интерфейс устарел; лучше, чтобы вызывающий код сам открывал файл и убедился, что при необходимости режим равен `'rb'` или `'wb'` в Windows.1415Этот код был предоставлен Лэнсом Эллингхаусом и доработан Джеком Янсеном.1617Модуль [`uu`](https://python-all.ru/3.5/library/uu.html#module-uu) определяет следующие функции:1819#### `uu.encode(in_file, out_file, name=None, mode=None)`2021Uuencode-кодирует файл *in\_file* в файл *out\_file*. Закодированный файл будет содержать заголовок, указывающий *name* и *mode* в качестве значений по умолчанию для результатов dекодирования файла. Значения по умолчанию берутся из *in\_file* или, соответственно, из `'-'` и `0o666`.2223#### `uu.decode(in_file, out_file=None, mode=None, quiet=False)`2425Этот вызов декодирует uuencode-файл *in\_file* и помещает результат в файл *out\_file*. Если *out\_file* является путём, то *mode* используется для установки битов разрешений, если файл должен быть создан. Значения по умолчанию для *out\_file* и *mode* берутся из заголовка uuencode. Однако, если файл, указанный в заголовке, уже существует, возбуждается [`uu.Error`](https://python-all.ru/3.5/library/uu.html#uu.Error).2627[`decode()`](https://python-all.ru/3.5/library/uu.html#uu.decode) может выводить предупреждение в стандартный поток ошибок, если входные данные были созданы некорректным uuencoder'ом и Python смог восстановиться после этой ошибки. Установка *quiet* в истинное значение подавляет это предупреждение.2829#### `exception uu.Error`3031Подкласс [`Exception`](https://python-all.ru/3.5/library/exceptions.html#Exception), может быть возбуждён с помощью [`uu.decode()`](https://python-all.ru/3.5/library/uu.html#uu.decode) в различных ситуациях, таких как описанные выше, а также при неправильно отформатированном заголовке или обрезанном входном файле.3233> **См. также**34>35> **Модуль [`binascii`](https://python-all.ru/3.5/library/binascii.html#module-binascii)**36>37> Вспомогательный модуль, содержащий преобразования ASCII-в-двоичный и двоичный-в-ASCII.38