问题描述:python以16进制读取文本,就是获取以下图片红框中的DF,F8,DF这些16进制,然后做一些处理,再写到文件中。
1个字节 == 8Bit == 两个hex(1~F)
文件读取可以按行readline。。
f = open('1.txt','rb')
while True:
t = f.readline()
if not t :
break
f.close()
但这么做,只能获取一个str对象
str转成hexs[]:
hexs = []
for ss in s:
tmp = (hex(ord(ss)).replace('0x',''))
if len(tmp) == 2:#DF之类的
hexs.append(tmp)
else:#0D之类的,默认写成D
hexs.append('0'+tmp)
但这么做,获取的hexs,也是type(str)对象,hex()本来返回的是就是一个str对象
hexs[]转成真正的16进制数据:
其实到这里一想,python内部的数字表示一定都是2进制啊&#x