如何解决如何在列表中添加十六进制字符串变量?
我正在尝试将 HEX 字符串变量添加到列表中,然后将列表输出到 HEX 文件中。 我用默认值填充列表
DATA = []
for byte in range (256):
DATA.append('\0')
然后我需要在列表中插入一些变量 插入字符串没有问题:
Name = 'ABCD12345'
DATA[55] = Name
但是如果我想插入以前计算的十六进制字符串,例如:
HWrev4SWrevDec = 1000
HWrev4SWrevBE = ((HWrev4SWrevDec & 0x00ff)<<8) + ((HWrev4SWrevDec & 0xff00)>>8)
HWrev4SWrevBEstr = hex(HWrev4SWrevBE).replace('0x','')
print(HWrev4SWrevBEstr)
e803
并尝试这样做:
DATA[104] = '/x'+HWrev4SWrevBEstr[0:2]
我收到以下错误: SyntaxError: (unicode error) 'unicodeescape' 编解码器无法解码位置 1-2 中的字节:截断的 \xXX 转义
以下代码:
DATA[104] = '\xe8'+'\x03'
工作正常。之后:
with open("..\\..\\Datafiles\\data.hex",'w') as datafile:
datafile.write(''.join(DATA[i] for i in range(256)))
datafile.close
此代码:
DATA[104] = '\\x'+HWrev4SWrevBEstr[0:2]
解决我的问题的正确方法是什么? 忘了说,我使用 Python 3.4。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。