19.10. uu
— 对 uuencode 文件进行编码与解码¶
源代码: Lib/uu.py
此模块使用 uuencode 格式来编码和解码文件,以便任意二进制数据可通过仅限 ASCII 码的连接进行传输。 在任何要求文件参数的地方,这些方法都接受文件类对象。 为了保持向下兼容,也接受包含路径名称的字符串,并且将打开相应的文件进行读写;路径名称 '-'
被解读为标准输入或输出。 但是,此接口已被弃用;在 Windows 中调用者最好是自行打开文件,并在需要时确保模式为 'rb'
or 'wb'
。
此代码由 Lance Ellinghouse 贡献,并由 Jack Jansen 修改。
uu
模块定义了以下函数:
-
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
'-'
and0o666
respectively.
-
uu.
decode
(in_file, out_file=None, mode=None, quiet=False)¶ 调用此函数会解码 uuencod 编码的 in_file 文件并将结果放入 out_file 文件。 如果 out_file 是一个路径名称,mode 会在必须创建文件时用于设置权限位。 out_file 和 mode 的默认值会从 uuencode 标头中提取。 但是,如果标头中指定的文件已存在,则会引发
uu.Error
。如果输入由不正确的 uuencode 编码器生成,
decode()
可能会打印一条警告到标准错误 ,这样 Python 可以从该错误中恢复。 将 quiet 设为真值可以屏蔽此警告。
-
exception
uu.
Error
¶ Exception
的子类,此异常可由uu.decode()
在多种情况下引发,如上文所述,此外还包括格式错误的标头或被截断的输入文件等。
也參考
- 模块
binascii
- 支持模块,包含ASCII到二进制和二进制到ASCII转换。