今天,我将与您分享一种将Python十六进制整数转换为ASCii编码的字符串的方法,该方法具有很好的参考价值,希望对大家有所帮助. 让我们一起关注小编,看看
当使用Pyserial与STM32通信时,我遇到了需要发送一串以Ascii码编码的十六进制整数并将接收到的Ascii码字符串转换为十六进制整数的问题. 在Internet上检查了信息之后,没有一个满足要求,因此,与一家之主一起使用了以下方法.
环境
Python2.7 + Binascii模块
十六进制整数到ASCii编码的字符串
# -*- coding: utf-8 -*-
import binascii
#16进制整数转ASCii编码字符串
a = 0x665554
b = hex(a) #转换成相同的字符串即'0x665554'
b = b[2:] #截取掉'0x'
c = binascii.a2b_hex(b) #转换成ASCii编码的字符串
print("a:%x, b:%s,c:%s" %(a,b,c))
print type(a)
print type(b)
print type(c)
测试结果:
a:665554, b:665554,c:fUT
ASCii编码的字符串为十六进制整数
# -*- coding: utf-8 -*-
import binascii
c = 'fUT'
e = 0 #暂存结果
for i in c:
d = ord(i) #单个字符转换成ASCii码
e = e*256 + d #将单个字符转换成的ASCii码相连
print("e:%x" %e)
print type(e)
测试结果:
e:665554
如您所见16进制转ascii转换工具,以上两个小程序成功达到了此设计要求
以上我在Python十六进制整数和ASCii编码的字符串之间的转换方法是我与您共享的所有内容. 我希望能给您参考16进制转ascii转换工具,也希望您能支持我们.
本文标题: Python十六进制整数与ASCii编码的字符串之间的转换方法
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-/a/jisuanjixue/article-278669-1.html