记录一次字节串 转换错误

print(b'\xf3\x25' ==  b'\xf3%')  # 输出结果是True

因为在测试的时候 发现输出不同的结果 ,经查表才发现 上述都是代表同一个value

import struct
# 字节串转数值
print(struct.unpack('<h',b'\xf3\x25')) # 9715
print(struct.unpack('<h',b'\xf3%')) # 9715

#数值转字节串
print(struct.pack('<h',9715)) # 输出b'\xf3%'

#利用memoryview对象对字节的处理
print(memoryview(b'\xf3%').tolist()) #输出  [243, 37]  十进制243对应下面16进制f3  37对应16进制25 刚好对应ASCII可显示字符中的%,见下图
print(memoryview(b'\xf3%').hex()) #输出 f325

b'\x124' ==  b'\x12\x34' # True 其中就是因为 4的ascii码16进制值是34

posted @ 2021-01-05 17:53  烦恼1234  阅读(104)  评论(0编辑  收藏  举报