binascii模块

binascii模块

简介

binascii模块包含很多在二进制和ASCII编码的二进制表示转换的方法。通常情况不会直接使用这些功能,而是使用像UU,base64编码,或BinHex封装模块。 binascii模块包含更高级别的模块使用的,用C语言编写的低级高效功能。

 

包含的函数

函数

描述

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)

计算databinhex4crc

crc32(data[, crc])

根据crc,计算crc32(32位检验和数据,然后将结果&0xffffffff(为了在所有Python版本中生成相同的结果,具体不清楚,求指导…)

b2a_hex(data)

返回二进制数据的16进制的表现形式

a2b_hex(data)

与上面相反

hexlify(data)

返回二进制数据的16进制的表现形式

unhexlify(hexstr)

与上面相反

 

相关内置函数

  • chr():把一个整形转换成ASCII码表中对应的单个字符
  • ord():ASCII码表中的字符转换成对应的整形
  • hex():把十进制转换成16进制字符
  • oct():把十进制转换成八进制字符
  • bin():把十进制整形转换成二进制字符

使用示例

    import binascii

 

    a = b'Jet'

    # 先把worker转换成二进制数据然后在用十六进制表示

    b = binascii.b2a_hex(a)

    print(b)

    # 与b2a_hex相反

    print(binascii.a2b_hex(b))

    # 这个功能和b2a_hex()一样

    c = binascii.hexlify(a)

    print(c)

    # 这个功能和a2b_hex()一样

    print(binascii.unhexlify(c))

运行结果:

b'4a6574'
b'Jet'
b'4a6574'
b'Jet'
 

 

 

 

猜你喜欢

转载自blog.csdn.net/Kwoky/article/details/108574224