# 19.10. `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 :mod: uu define as seguintes funções:

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

  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.

`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.