Python - 如何将int转换为字符串表示32位十六进制数

wil*_*iam 14 python hex integer

我想得到一个python解决方案来解决这个问题:

例如

integer 1 -> string "0x00000001"
integer 64 -> string "0x00000040"
integer 3652458 -> string "0x0037BB6A"
Run Code Online (Sandbox Code Playgroud)

如果数字在,则字符串大小不会改变range(0, 2**32).

eum*_*iro 25

试试这个:

'0x%08X' % 3652458
Run Code Online (Sandbox Code Playgroud)

或(使用Python 2.6及更高版本)

'0x{0:08X}'.format(3652458)
Run Code Online (Sandbox Code Playgroud)

两者都回归:

'0x0037BB6A'
Run Code Online (Sandbox Code Playgroud)

  • 我想给你另外一个+1,在你的答案中包含`format` (3认同)