这个问题在这里已有答案:
我需要创建一个只包含十六进制数据的文件。
假设我有一个整数值10,我想要十六进制'a'写入文件的值。该文件应该只有1个字节的大小。
我尝试了格式,binascci.hexlify
等,但它没有提供正确的解决方案。如果我直接使用hex(10),它将为文件添加0x。
如果我写25,该文件将包含两个字符1和9(25(dec)= 19(十六进制))
请告诉我正确的机制。
format(10,'x')
format(25,'x')
产量
'a'
'19'
"{:x}".format(i)
如果你想用这个来创造一个功能:
enhex = "{:x}".format
>>> '%#x' % 15, '%x' % 15, '%X' % 15
('0xf', 'f', 'F')
>>> format(15, '#x'), format(15, 'x'), format(15, 'X')
('0xf', 'f', 'F')
>>> f'{15:#x}', f'{15:x}', f'{15:X}'
('0xf', 'f', 'F')