Spi*_*ico 5 binary python-2.7 binascii
我正在尝试将 ASCII 字符串来回转换为其二进制表示,如下所示。
s=chr(0)*15 + chr(0x01)
bst = bin(int(binascii.hexlify(s), 16))
n = int(bst, 2)
binascii.unhexlify('%x' % n)
Run Code Online (Sandbox Code Playgroud)
但是,最后我收到以下错误,这对我来说没有多大意义。
1 binascii.unhexlify('%x' %n)
类型错误:奇数字符串
这是什么问题,我该如何解决?
使用Python控制台:
>>> help(binascii.unhexlify)
unhexlify(...)
a2b_hex(hexstr) -> s; Binary data of hexadecimal representation.
hexstr must contain an even number of hex digits (upper or lower case).
This function is also available as "unhexlify()"
Run Code Online (Sandbox Code Playgroud)
所以误差是一致的。你所要做的就是填充'0'以获得偶数:
>>> binascii.unhexlify('0%x' % n)
'\x01'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12800 次 |
| 最近记录: |