Python的功能模块[3] -> binascii -> 编码转换
binascii模块 / binascii Module
binascii模块包含很多在二进制和 ASCII 编码的二进制表示之间的转换方法。关于进制转换可以参考一些内置函数。
hexlify 与 unhexlify
>>> import binascii >>> a = 'hello world' >>> b = binascii.b2a_hex(a) Traceback (most recent call last): File "<pyshell#2>", line 1, in <module> b = binascii.b2a_hex(a) TypeError: 'str' does not support the buffer interface >>> a = b'hello world' >>> b = binascii.b2a_hex(a) >>> print(b) b'68656c6c6f20776f726c64' >>> b = binascii.hexlify(a) >>> print(b) b'68656c6c6f20776f726c64' >>> print(binascii.unhexlify(b)) b'hello world'
上面的函数 hexlify 和 b2a_hex 实际上是一个函数,推荐使用 hexlify。其作用是返回的二进制数据的十六进制表示。每个字节的数据转换成相应的 2 位十六进制表示。因此产生的字符串是原数据的两倍长度。a2b_hex 和 unhexlify 则执行反向操作。
相关阅读
1. 内置函数