uu — 编码和解码 uuencode 文件

源代码: Lib/uu.py

自版本 3.11 起已弃用,将在版本 3.13 中移除: The uu 模块已弃用(有关详细信息,请参阅 PEP 594)。base64 是现代的替代方案。


此模块以 uuencode 格式对文件进行编码和解码,允许在仅 ASCII 的连接上传输任意二进制数据。在需要文件参数的地方,这些方法接受类似文件的对象。为了向后兼容,还接受包含路径名的字符串,并且将打开相应的文件以进行读写;路径名 '-' 被理解为标准输入或输出。但是,此接口已弃用;调用者最好自己打开文件,并确保在需要时,模式在 Windows 上为 'rb''wb'

此代码由 Lance Ellinghouse 贡献,并由 Jack Jansen 修改。

The uu 模块定义了以下函数

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

将文件 in_file 编码为 uuencode 格式,并写入文件 out_file。uuencoded 文件将包含指定 namemode 的头,作为解码文件结果的默认值。默认的默认值取自 in_file,或者分别为 '-'0o666。如果 backtick 为真,则零用 '`' 表示,而不是空格。

在版本 3.7 中更改: 添加了 backtick 参数。

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

此调用解码 uuencoded 文件 in_file,并将结果放置在文件 out_file 上。如果 out_file 是路径名,则 mode 用于设置权限位(如果必须创建文件)。out_filemode 的默认值取自 uuencode 头。但是,如果头中指定的文件已存在,则会引发 uu.Error

decode() 可能会向标准错误输出打印警告,如果输入是由不正确的 uuencoder 生成的,而 Python 能够从该错误中恢复。将 quiet 设置为真值将使此警告静音。

exception uu.Error

Exception 的子类,这可能会由 uu.decode() 在各种情况下引发,例如上面描述的情况,但也包括格式错误的头或截断的输入文件。

另请参阅

模块 binascii

包含 ASCII 到二进制和二进制到 ASCII 转换的支持模块。