0x1 模块简介
主要用于二进制和ASCII互相转换(Convert between binary and ASCII );
相关内置函数
- chr():把一个整形转换成ASCII码表中对应的单个字符,int(ascii) –> ascii
- ord():把ASCII码表中的字符转换成对应的整形 , str –> int(ascii)
- hex():把十进制转换成16进制字符 , 十 –> 十六
- oct():把十进制转换成八进制字符 ,十 –> 八
- bin():把十进制整形转换成二进制字符,十 –> 二
包含的函数
函 数 | 描 述 |
---|---|
a2b_uu(string) | 将以ascii编码的一行数据转化为二进制,并且返回二进制数据. |
b2a_uu(data) | 将二进制数据转化为一行以ascii编码的字符,date的最大长度为45. |
a2b_base64(string) | 将一块base64的数据转换为二进制数据,并返回该二进制数据 |
b2a_base64(string) | 与上面相反 |
a2b_qp(string[, header]) | quoted-printable data->bin,并返回 |
b2a_qp(data[, quotetabs, istext, header]) | 与上面相反 |
a2b_hqx(string) | binhex4格式化的ASCII数据转换为二进制,没有做RLE解压. |
b2a_hqx(data) | 与上相反 |
rledecode_hqx(data) | 按照binhex4标准,对data执行RLE解压 |
rlecode_hqx(data) | 对data执行binhex方式的压缩,并返回结果 |
crc_hqx(data, crc) | 计算data的binhex4的crc值 |
crc32(data[, crc]) | 根据crc,计算crc32(32位检验和数据,然后将结果&0xffffffff(为了在所有Python版本中生成相同的结果,具体不清楚,求指导…) |
b2a_hex(data) | 返回二进制数据的16进制的表现形式 |
a2b_hex(data) | 与上面相反 |
hexlify(data) | 返回二进制数据的16进制的表现形式 |
unhexlify(hexstr) | 与上面相反 |
使用示例
#coding:utf-8
import binascii
a = ‘hello world’
#先把a转换成二进制数据然后在用十六进制表示
b = binascii.b2a_hex(a) ——————————-> b = ‘48656c6c6f20776f7264’
c = binascii.hexlify(a)#和a2b_hex()功能是一样的,但是推荐用这个函数
利用b2a_hex()返回的字符串长度为原串的两倍,因为转换为十六进制,一个字节用两个字节表示了