Python按两位两位倒序输出(短数据)

前言:

        本人经典大学生没有认真听课,但是期末要做项目考核!

做项目的时候遇到一串口十六进制倒置的问题,是单片机返回来的十六进制数经过提取在按两位两位倒序再换成十进制,才得到目标数据。

初学Python,查了各种字符串的切法,就是没查到按两位两位切再倒序的算法。

自己又是查又是冥思苦想,就想要一个通用的方法,弄了很久,还是无果......

于是灵机一动,直接粗暴切片拼接。

想想有时候,定制的简单也不失是一种高效率的方法

代码:

import binascii
data = str(binascii.b2a_hex(t.read(num)))[2:-1][14:22]  # 十六进制数据提取出其中八位数据位
dex = data[6:8]+data[4:6]+data[2:4]+data[0:2]#直接粗暴切片拼接
print(dex)

真的通用算法:

          我觉得可以用递归来做。不过有一个大佬解决了这个问题,方法很简单就是代码有点复杂

详情见https://blog.csdn.net/wazh012/article/details/4974464

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值