python 字符串格式 %x 和 %#x 有什么区别(哈希标签十六进制?)

标签 python string hex string-formatting number-formatting

我正在将一些 python 移植回 .NET,但我似乎无法弄清楚 %x%#x 之间的区别

   print "%s: [%#x][%x] %s" % (message, self.eip, self.opcode,
                                    i.get_disasm())

与下面的这个函数相同,它似乎只是一个普通的 Hex() 函数,在右前方附加 0x 为什么不直接使用 %x 呢?

def prettify_value(value):
    if TypeOf value, (long Is int):
        value = '%#x' % value
    return value

是的,我似乎在这里找不到答案:https://docs.python.org/2/library/string.html

没关系,我发现它打印得非常精美

'#' 选项仅对整数有效,并且仅对二进制、八进制或十六进制输出有效。如果存在,它指定输出将分别以“0b”、“0o”或“0x”为前缀。

最佳答案

“#”选项仅对整数有效,并且仅对二进制、八进制或十六进制输出有效。如果存在,它指定输出将分别以“0b”、“0o”或“0x”为前缀。

关于python 字符串格式 %x 和 %#x 有什么区别(哈希标签十六进制?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32513104/

相关文章:

python - 在子字符串上熔化和合并 - Python 和 Pandas

php - 使用循环一次在一个字符中创建字符串

python - 理论上Python可以是 "Decompiled"到C吗

python-evdev : reading axes X and Y of a gamepad simultaneously

string - Julia:如何将向量的字符连接在一起( ["a"、 "b"、 "c"] -> "abc")

vb.net - 将 ASCII 字符转换为其十六进制值

c - 在 C 中,如何将 char* 转换为 hex

hex - 如何判断十六进制值是否为负?

python - 如何在路由函数中启用仅限开发的行为

string - 对 KMP 中的预处理表感到困惑