Pythonhex
如何将十进制转换为hex格式(至less两位数,零填充,没有0x前缀)?
input: 255输出: ff
input: 2输出: 02
我试过hex(int)[2:]但它似乎显示第一个例子,但不是第二个。
以'02x'格式使用format()函数 。
>>> format(255, '02x') 'ff' >>> format(2, '02x') '02'
02部分告诉format()使用至less2个数字并使用零填充长度, x表示小写的hex。
格式规范迷你语言也为X提供了大写的hex输出,并且可以在字段宽度前添加#以包含0x或0X前缀(取决于您使用x还是X作为格式化程序)。 只要考虑到您需要调整字段宽度以允许额外的2个字符:
>>> format(255, '02X') 'FF' >>> format(255, '#04x') '0xff' >>> format(255, '#04X') '0XFF'
我想这是你想要的:
>>> def twoDigitHex( number ): ... return '%02x' % number ... >>> twoDigitHex( 2 ) '02' >>> twoDigitHex( 255 ) 'ff'
第一个答案是最好的,但我有一个古老的答案,但function
>>> "".join(list(hex(255))[2:]) 'ff'