示例:
0xb6f99cec
0xb6f99d2c
0xb6f99d6c
0xb6f99dac
这是一个设计决定,它是一个内存问题,它是否使事情更容易,为什么8而不是4或12或16?
答案 0 :(得分:5)
内存 - 你有32位系统。 在64位系统上,地址有16个(或更少,如我所见;-))十六进制数字。像这样:
str(object())
Out[1]: '<object object at 0x7fe72a054360>'
答案 1 :(得分:4)
每个十六进制数字携带4位信息。你有八个十六进制数字。因此,该号码携带32位信息。只是地址适合32位。如果您使用的是32位Python,那么情况总是如此;如果您使用的是64位Python,则可能是地址刚刚发生以使所有高位为零并最终适合32位。