问题描述
我想将我的 int
数字转换为 hex
数字,以指定我最终十六进制表示中的字符数。
这是我接受输入并将其转换为 hex
的简单代码:
my_number = int(1234)
hex_version = hex(my_number)
但是我希望我的输出包含 16 个字符,所以基本上它应该是 0x00000000000004d2
。
有没有办法指定 hex()
运算符的输出字符数?使其填充所需的 0 量。
解决方法
来自 Python 的 Format Specification Mini-Language:
n = int(1234)
h = format(n,'#018x')
以上将生成所需的字符串。幻数 18 的获得方式如下:16 表示您需要的宽度 + 2 表示 '0'(零)和 'x'(用于十六进制描述符字符串前缀)。