このモジュールではファイルをuuencode形式(任意のバイナリデータをASCII文字列に変換したもの)にエンコード、デコードする機能を提供します。引数としてファイルが仮定されている所では、ファイルのようなオブジェクトが利用できます。後方互換性のために、パス名を含む文字列も利用できるようにしていて、対応するファイルを開いて読み書きします。しかし、このインタフェースは利用しないでください。呼び出し側でファイルを開いて(Windowsでは 'rb' か 'wb' のモードで)利用する方法が推奨されます。
このコードはLance Ellinghouseによって提供され、Jack Jansenによって更新されました。
uu モジュールでは以下の関数を定義しています。
in_file を out_file にエンコードします。エンコードされたファイルには、デフォルトでデコード時に利用されるname と mode を含んだヘッダがつきます。省略された場合には、 in_file から取得された名前か '-' という文字と、 0666 がそれぞれデフォルト値として与えられます。
uuencode形式でエンコードされた in_file をデコードして varout_file に書き出します。もし out_file がパス名でかつファイルを作る必要があるときには、 mode がパーミッションの設定に使われます。 out_file と mode のデフォルト値は in_file のヘッダから取得されます。しかし、ヘッダで指定されたファイルが既に存在していた場合は、 uu.Error が送出されます。
誤った実装のuuencoderによる入力で、エラーから復旧できた場合、 decode() は標準エラー出力に警告を表示するかもしれません。 quiet を真にすることでこの警告を抑制することができます。
Exception のサブクラスで、 uu.decode() によって、さまざまな状況で送出される可能性があります。上で紹介された場合以外にも、ヘッダのフォーマットが間違っている場合や、入力ファイルが途中で区切れた場合にも送出されます。
参考