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'