2

Pythonで16進整数から16進文字列に変換する合理的に簡単な方法はありますか? たとえば、 I have 0xa1b2c3and I want "0xa1b2c3". str() を使用すると、自動的に基数 10 に変換されますが、その時点では文字列であるため、元に戻すことはできません。

4

2 に答える 2

5

なぜそうしないのhex()ですか?

>>> testNum = 0xa1b2c3
>>> hex(testNum)
    '0xa1b2c3'
>>> test = hex(testNum)
>>> isinstance(test, str)
    True

hex文字列表現を返します。見るhelp(hex)

hex(...)
    hex(number) -> string

    Return the hexadecimal representation of an integer or long integer.
于 2013-07-05T19:47:03.730 に答える
2

使用hex:

>>> x = 0xa1b2c3
>>> hex(x)
'0xa1b2c3'

または文字列の書式設定:

>>> "{:#x}".format(x)
'0xa1b2c3'

またはフォーマット

>>> format(x, '#x')
'0xa1b2c3'
于 2013-07-05T19:46:59.360 に答える