Python binascii 模块进制转换实战解析
本文详解Python中binascii模块的进制转换方法,重点解析b2a_hex与hexlify函数的用法及区别。通过实例对比binascii与hex、bin等内置函数在处理字符串与整型时的差异,帮助开发者准确选择转换工具,避免类型错误。
binascii模块进制转换基础
以下通过具体代码示例展示Python中binascii模块在进制转换方面的应用。
binascii与内置函数对比
#coding:utf-8
import binascii
a = 'worker'
#先把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)
######运行结果######
>>> 776f726b6572
worker
776f726b6572
worker
python内置函数:
hex():
#把10进制转整形换成16进制
>>> hex(88)
'0x58'
#把浮点型转换成16进制
>>> 1.23.hex()
'0x1.3ae147ae147aep+0'
#内置函数hex和binascii.hexlify()的区别就在于,
#hex只能接受整形不能接受字符串
>>> hex('88')
Traceback (most recent call last):
File "<pyshell#26>", line 1, in <module>
hex('88')
TypeError: hex() argument can't be converted to hexbin():ba
bin():把十进制整形转换成二进制字符
#把十进制整型转换成二进制
>>> bin(88)
'0b1011000'
>>> bin(33)
'0b100001'
oct():把十进制转换成八进制字符
#把十进制转换成八进制
>>> oct(500)
'0764'
>>> oct(488)
'0750'
chr():把一个整形转换成ASCII码表中对应的单个字符
#把一个整形转换成ASCII码表中对应的单个字符
>>> chr(98)
'b'
>>> chr(97)
'a'
ord():和chr相反,把ASCII码表中的字符转换成对应的整形
>>> ord('b')
98
>>> ord('c')
99
上述内容介绍了Python binascii模块进行进制转换的具体实例,旨在为读者提供实用的参考。希望这些内容能对您的开发工作有所帮助,同时也欢迎持续关注本站以获取更多技术分享。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













