简介:今天,首席执行官指出,要与您分享python+int类型的数字。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!
以python3版本为例,int类型是python中的动态长度。因为python3中的int类型是较长且整数,因此该理论支持大量数字,但其结构实际上非常简单。它在longintepr.h中定义:
struct_longobject {
pyObject_var_head
DIGIT OB_DIGIT [1];
};
这个结构是什么意思?重点是ob_digit。这是一个阵列指针。Digit可以被视为int的别名。这是Python的整数存储机制。这边走:
ob_digit [0] = 789
ob_digit [1] = 456
ob_digit [2] = 123
低位置存储在低索引中。在python的整数结构中的阵列中,每个元素存储15位二进制数(32位数字系统具有15位不同数字的32位数字的数字,而64位 - 位数为64位。系统是30位)。
因此,sys.getSizeOf(0)数组元素为0.在这次,占据24个字节(pyobject_var_head的大小).sys.sys.getSizeOf(456)需要使用元素,因此使用4个字节。
你理解错误。
Python的int可能是无限大的(受您的内存约束),您将其分配为1,000位整数。
《计算机系统的深度理解》一书提到了32台机器和64台机器中的4个字节,而短则不再超过int,它不超过长时间。位置和短类型的长度不能超过INT类型,并且INT类型不能超过长类型。这意味着每种类型的可变长度由编译器确定,并且当前主流编译器通常为4个字节(例如,GCC)32-bit中机器和64位机器。
相关建议:“ Python教程”
这是海湾合作委员会编译器下的32台机器和64台机器占用的字节数:
应该解释的是,指针类型存储了变量的地址,因此32位计算机只需要32位,而64位计算机需要64位。
结论:以上是首席CTO注释介绍给所有人的Python+INT类型的所有内容。我希望这对每个人都会有所帮助。如果您想了解更多有关此信息的信息,请记住要收集对该网站的关注。