# `uu` — Codifica e decodifica arquivos uuencode

Código-fonte: Lib/uu.py

Este módulo codifica e decodifica arquivos no formato uuencode, permitindo que dados binários arbitrários sejam transferidos por conexões somente ASCII. Sempre que um argumento de arquivo é esperado, os métodos aceitam um objeto arquivo ou similar. Para compatibilidade com versões anteriores, uma string contendo um nome de caminho também é aceita, e o arquivo correspondente será aberto para leitura e gravação; o nome do caminho `'-'` é entendido como a entrada ou saída padrão. No entanto, essa interface foi descontinuada; é melhor para o chamador abrir o próprio arquivo e ter certeza de que, quando necessário, o modo é `'rb'` ou `'wb'` no Windows.

Este código foi contribuído por Lance Ellinghouse e modificado por Jack Jansen.

O módulo `uu` define as seguintes funções:

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

  Arquivo uuencode in_file no arquivo out_file. O arquivo uuencoded terá o cabeçalho especificando name e mode como os padrões para os resultados da decodificação do arquivo. Os padrões padrão são obtidos de in_file, ou `'-'` e `0o666` respectivamente. Se backtick for verdadeiro, zeros são representados por `'`'` ao invés de espaços.

  Alterado na versão 3.7: Adicionado o parâmetro backtick.

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

  Esta chamada decodifica o arquivo uuencoded in_file colocando o resultado no arquivo out_file. Se out_file for um nome de caminho, mode será usado para definir os bits de permissão se o arquivo precisar ser criado. Os padrões para out_file e mode são retirados do cabeçalho uuencode. Porém, se o arquivo especificado no cabeçalho já existir, uma `uu.Error` é levantada.

  `decode()` pode imprimir um aviso de erro padrão se a entrada foi produzida por um uuencoder incorreto e o Python pôde se recuperar desse erro. Definir quiet com um valor verdadeiro silencia este aviso.

exception `uu.``Error`

  Subclasse de `Exception`, isso pode ser levantada por `uu.decode()` em várias situações, como descrito acima, mas também incluindo um cabeçalho mal formatado ou arquivo de entrada truncado.

Ver também

Módulo `binascii`

  Módulo de suporte contendo conversões ASCII para binário e binário para ASCII.