【问题标题】:Python: Convert hex to stringPython:将十六进制转换为字符串
【发布时间】:2015-04-29 14:38:57
【问题描述】:

0x0F0x05 之类的值必须作为开头没有 0x 的字符串提供给函数,因此 0F05

如果我使用str(hex(0x0F))[2:4],我只会得到f。缺少的0 仍然存在于我的应用程序中,这一点至关重要。

我该怎么做?

【问题讨论】:

    标签: python string hex


    【解决方案1】:

    你会使用str.format:

    In [1]: '{:02X}'.format(0x0F)
    Out[1]: '0F'
    

    在此上下文中,{:02X} 等效于 {0:02X}。在冒号前加上 0 告诉 Python 将其应用于 str.format 的第一个参数(在本例中为 0x0F)。 02 将最小字段宽度设置为 2

    在宽度字段前加上零 ('0') 字符可启用符号感知 数字类型的零填充

    X 是可用的整数表示类型之一:

    十六进制格式。输出以 16 为底的数字,使用大写字母 对于 9 以上的数字。

    两个引号都来自Format Specification Mini-Language

    【讨论】:

    • In[14] 和 Out[14] 是什么意思?
    • @Creatronik 这是IPython shell 添加的内容。您可以放心地忽略它。
    • 好的,这很好用,但是你能给我一个链接吗?在哪里更详细地解释了整个 {:02X} 语句?或者也许马上自己做:D
    猜你喜欢
    • 2020-06-20
    • 2018-01-31
    • 2018-01-22
    • 1970-01-01
    • 2013-02-07
    • 2014-12-22
    • 2017-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多