Python 十六进制

标签 python hex

如何将十进制转换为以下格式的十六进制(至少两位,零填充,不带 0x 前缀)?

输入:255 输出:ff

输入:2 输出:02

我尝试了 hex(int)[2:] 但它似乎显示了第一个示例而不是第二个示例。

最佳答案

使用 format() function '02x' 格式。

>>> format(255, '02x')
'ff'
>>> format(2, '02x')
'02'

02 部分告诉 format() 使用至少 2 位数字并使用零填充长度,x 表示较低-大小写十六进制。

Format Specification Mini Language还为您提供 X 用于大写十六进制输出,您可以在字段宽度前加上 # 以包含 0x0X 前缀(取决于您使用 x 还是 X 作为格式化程序)。只需考虑到您需要调整字段宽度以允许额外的 2 个字符:

>>> format(255, '02X')
'FF'
>>> format(255, '#04x')
'0xff'
>>> format(255, '#04X')
'0XFF'

关于Python 十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14678132/

相关文章:

android - 在android上将十六进制转换为二进制

c++ - C++ 十六进制输出到字符串

python - 运行动态编译的代码对象时,如何在回溯中保留源代码行?

python - 如何在 QListWidget 添加或删除内容时触发事件

python - Shutil.copy 导致文件数据删除

python - 如何从 CMake 获取 "install"Python 代码?

python - 使用 numpy 计算投影和重构误差的函数 - python

ios - byteArray to Hex NSString - 添加了一些错误的十六进制内容

delphi - 我的 key 的二进制和十六进制字符串表示之间的差异是 DCPCrypt 意外输出的原因吗?

python - 使用 python 通过串行发送十六进制