将 int 转换为给定字符数的 hex

Convert int to hex of a given number of characters

我想将我的 int 数字转换成一个 hex 数字,指定最终十六进制表示中的字符数。

这是我的简单代码,它接受输入并将其转换为 hex:

my_number = int(1234)
hex_version = hex(my_number)

此代码 returns 一个等于 0x4d2 的字符串。

但是我希望我的输出包含 16 个字符,所以基本上它应该是 0x00000000000004d2

有没有办法指定 hex() 运算符的输出字符数?以便它填充所需的数量 0.

来自Python的Format Specification Mini-Language

n = int(1234)
h = format(n, '#018x')

以上将生成所需的字符串。幻数 18 的获取方式如下:16 表示您需要的宽度 + 2 表示“0”(零)和 'x'(表示十六进制描述符字符串前缀)。