Python 十六进制整数与ASCii编码字符串相互转换方法


Posted in Python onJuly 09, 2018

在使用Pyserial与STM32进行通讯时,遇到了需要将十六进制整数以Ascii码编码的字符串进行发送并且将接收到的Ascii码编码的字符串转换成十六进制整型的问题。查阅网上的资料后,均没有符合要求的,遂结合各家之长,用了以下方法。

环境

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
<type 'int'>
<type 'str'>
<type 'str'>

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
<type 'int'>

可以看到,以上两段小程序顺利实现了这个设计要求

以上这篇Python 十六进制整数与ASCii编码字符串相互转换方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python常规方法实现数组的全排列
Mar 17 Python
Django小白教程之Django用户注册与登录
Apr 22 Python
多版本Python共存的配置方法
May 22 Python
Python Paramiko模块的使用实际案例
Feb 01 Python
取numpy数组的某几行某几列方法
Apr 03 Python
python实现烟花小程序
Jan 30 Python
python实现随机漫步方法和原理
Jun 10 Python
python 整数越界问题详解
Jun 27 Python
python按行读取文件并找出其中指定字符串
Aug 08 Python
Django中使用haystack+whoosh实现搜索功能
Oct 08 Python
Python importlib动态导入模块实现代码
Apr 16 Python
python绘制雷达图实例讲解
Jan 03 Python
python 以16进制打印输出的方法
Jul 09 #Python
python爬虫之urllib3的使用示例
Jul 09 #Python
机器学习之KNN算法原理及Python实现方法详解
Jul 09 #Python
Python实现基于KNN算法的笔迹识别功能详解
Jul 09 #Python
Python 16进制与中文相互转换的实现方法
Jul 09 #Python
python 文件转成16进制数组的实例
Jul 09 #Python
使用Python读取二进制文件的实例讲解
Jul 09 #Python
You might like
5.PHP的其他功能
2006/10/09 PHP
PHP服务器页面间跳转实现方法
2012/08/02 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
excel操作之Add Data to a Spreadsheet Cell
2007/06/12 Javascript
利用location.hash实现跨域iframe自适应
2010/05/04 Javascript
只需一行代码,轻松实现一个在线编辑器
2013/11/12 Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
2013/11/22 Javascript
js中window.open()的所有参数详细解析
2014/01/09 Javascript
纯JavaScript实现的兼容各浏览器的添加和移除事件封装
2015/03/28 Javascript
JQuery控制radio选中和不选中方法总结
2015/04/15 Javascript
jQuery实现网页抖动的菜单抖动效果
2015/08/07 Javascript
javascript性能优化之DOM交互操作实例分析
2015/12/12 Javascript
jQueryUI中的datepicker使用方法详解
2016/05/25 Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
2017/12/26 Javascript
Vue组件通信之Bus的具体使用
2017/12/28 Javascript
vuejs实现递归树型菜单组件
2018/01/13 Javascript
nodejs取得当前执行路径的方法
2018/05/13 NodeJs
Vue自定义弹窗指令的实现代码
2018/08/13 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
2020/07/20 Javascript
关于element的表单组件整理笔记
2021/02/05 Javascript
python多线程用法实例详解
2015/01/15 Python
Python离线安装PIL 模块的方法
2019/01/08 Python
对python:threading.Thread类的使用方法详解
2019/01/31 Python
对django后台admin下拉框进行过滤的实例
2019/07/26 Python
python点击鼠标获取坐标(Graphics)
2019/08/10 Python
keras在构建LSTM模型时对变长序列的处理操作
2020/06/29 Python
详细分析Python collections工具库
2020/07/16 Python
Under Armour安德玛德国官网:美国高端运动科技品牌
2019/03/09 全球购物
linux下进程间通信的方式
2014/12/23 面试题
2013年员工自我评价范文
2013/12/27 职场文书
金融系应届毕业生求职信
2014/05/26 职场文书
学期个人工作总结
2015/02/13 职场文书
物业保洁员管理制度
2015/08/05 职场文书
纯html+css实现奥运五环的示例代码
2021/08/02 HTML / CSS
Go语言怎么使用变长参数函数
2022/07/15 Golang