在 Python 中将变量声明为十六进制

Declaring a variable as hex in Python

我有一个变量

s=64

这个变量是十六进制的。但是 Python 将其视为十进制。如何将其声明为十六进制变量?

我知道将某些东西声明为十六进制,我们使用

s=0x64

但我只有

s=64

我该怎么做?

我认为你的代码理论或问题中缺少某些东西。

一件事是价值,另一件事是表达(解释)。 所以这个值是100(十进制),但是可以看到(转换)为十进制或十六进制(或任何你喜欢的):

>>> s=0x64
>>> s
100
>>> hex(s)
'0x64'
>>> h = int(str(0x64), 16)
>>> h
256

Python 将整数存储为小数(默认情况下)。如果你想要一个作为十六进制的数字,你应该编写你自己的 class 并使用我上面显示的转换例程。

十六进制(基数 16)的数字 64100。为了得到你的答案,你应该使用 hex(), int() and str() 的组合 如果您以 s = 64 开始,并希望以 s = 100 结束,这是 0x64 的十进制值,请考虑以下代码:

s = 64
s = int(str(s), 16)

如果你想要别的东西,请说明是什么,并注意你可以尝试通过 hex()、int() 和 str() 的某种组合自己实现它