python 如何提取二进制字符串 C = "10100001" (0xa1)
我想提取D7,6位, a = C 能不能想办法写成 a = Cpython 字符串是从0开始
我们理解中二进制字符串的意义是数字的最高位
该如何做呢 没看懂楼主想表达什么,你到底是想截取字符串中的某两位,还是想截取某个值中的2bit?
'0b10100001'从左往右解读,左侧是最高位,这是人去读的方法,和python中数据如何储存处理一点关系都没有。就如同左移是乘,右移是除,在哪都一样,和大小端无关一样。 先转成int再与0xc0行不? 感觉楼主是想按照逆序索引,那就转一下就好了呗
i1=7
i2=6
a = C[(7-i1):(7-i2+1)]
可以做成函数 自己写个函数不就可以了么,难道你想修改这个自带的函数?没意义啊 nanfang2000 发表于 2020-3-17 20:44
感觉楼主是想按照逆序索引,那就转一下就好了呗
i1=7
i2=6
谢谢,我就是这样做的,只是觉得不自然哈
hxl_led 发表于 2020-3-17 23:17
谢谢,我就是这样做的,只是觉得不自然哈
你可以用a=C[-8:-6]这种写法 hxl_led 发表于 2020-3-17 23:17
谢谢,我就是这样做的,只是觉得不自然哈
i7=0
i6=1
...
...
i1=6
i0=7
a = C
a = C
页:
[1]