uu — Кодування та декодування файлів uuencode

Вихідний код: Lib/uu.py

Застаріло з версії 3.11, буде видалено у версії 3.13: Модуль uu є застарілим (докладніше див. PEP 594). base64 — сучасна альтернатива.


Цей модуль кодує та декодує файли у форматі uuencode, що дозволяє передавати довільні двійкові дані через з’єднання лише ASCII. Скрізь, де очікується аргумент файлу, методи приймають файлоподібний об’єкт. Для зворотної сумісності також приймається рядок, що містить шлях, і відповідний файл буде відкрито для читання та запису; шлях '-' означає стандартний ввід або вихід. Однак цей інтерфейс застарів; краще, щоб абонент відкрив сам файл і переконався, що за потреби встановлено режим 'rb' або 'wb' у Windows.

Цей код надав Ленс Еллінгхаус і змінив Джек Янсен.

Модуль uu визначає такі функції:

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

Uuencode файл in_file у файл out_file. Файл uuencoded матиме заголовок із зазначенням name і mode як типових для результатів декодування файлу. Типові значення взято з in_file або '-' і 0o666 відповідно. Якщо backtick має значення true, нулі позначаються символом ''`' замість пробілів.

Змінено в версії 3.7: Додано параметр backtick.

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

Цей виклик декодує uuencoded файл 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.