使用 Python (binascii) 进行二进制和 ASCII 之间的转换
binascii 模块支持在二进制和各种 ASCII 编码的二进制表示之间进行转换。binascii 模块包含用 C 编写的低级函数,以提高速度。它们被更高层的模块(如 uu、base64 或 binhex 模块)使用。
binascii 模块定义了以下函数。这些函数命名为 a2b_* 或 b2a_*
binascii.a2b_uu(string): 将 uuencoded 数据的单行转换回二进制并返回二进制数据。行通常包含 45 个(二进制)字节,最后一行为例外。行数据后可能跟有空格。
binascii.b2a_uu(data): 将二进制数据转换为 ASCII 字符行,返回值是转换后的行,包括换行符。
binascii.a2b_base64(string): 将 base64 数据块转换回二进制并返回二进制数据。
binascii.b2a_base64(data): 将二进制数据转换为 base64 编码的 ASCII 字符行。如果 newline 为真,则返回值是转换后的行,包括换行符。
binascii.a2b_qp(data): 将带引号的可打印数据块转换回二进制并返回二进制数据。
binascii.b2a_qp(data): 将二进制数据转换为带引号的可打印编码的 ASCII 字符行(或多行)。返回值是转换后的行(或多行)。
binascii.a2b_hqx(string): 将 binhex4 格式的 ASCII 数据转换为二进制,无需执行 RLE 解压缩。字符串应包含完整的二进制字节数,或将剩余位设置为零。
binascii.rledecode_hqx(data): 根据 binhex4 标准对数据执行 REL 解压缩。
binascii.rlecode_hqx(data): 对数据执行 binhex4 样式的 RLE 压缩并返回结果。
binascii.b2a_hqx(data): 执行 hexbin4 二进制到 ASCII 转换并返回生成的字符串。参数应已进行 RLE 编码。
binascii.crc_hqx(data, value): 计算数据的 16 位 CRC 值,以 value 为初始 CRC 值开始,并返回结果。
binascii.crc32(data[, value]): 计算数据的 32 位校验和 CRC-32,以 value 为初始 CRC 值开始。默认初始 CRC 值为零。