标签:flaot format python float hex value ss ssa
在使用树莓派 modbus-tk 读取寄存器值后,得到的4byte值存为了元组,想将该数据转化为float,习惯了c的用法,转到python时,数据转换这一块一头雾水,经过多次尝试最终实现。记录一下:
format用法: python格式化输出之format用法
hex转float函数,hex_value 为偶数格字符串 如:'41ae0837' def Hex2Float(hex_value): return struct.unpack('!f',hex_value.decode('hex'))[0] modbus-rtu得到的2个寄存器的值为: o2 = (2103,16814) 使用format将int类型转换为字符串:format_ss = '{:04x}' ssa = format_ss.format(o2[1]) + format_ss.format(o2[0])注意大小端 ssa = '41ae0837' 将得到的字符串转为float
sfloat = Hex2Float(ssa) print '氧气浓度:',sfloat
氧气浓度: 21.7540111542
标签:flaot,format,python,float,hex,value,ss,ssa 来源: https://www.cnblogs.com/blueoapple/p/13121201.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。