Python中int占几个字节
以python3版本为例说明,int类型在python中是动态长度的。因为python3中int类型是长整型,理论支持大的数字,但它的结构其实也很简单,在longintepr.h中定义:
struct_longobject{
PyObject_VAR_HEAD
digitob_digit[1];
};
这结构是什么意思呢,重点在于ob_digit它是一个数组指针。digit可认为是int的别名。python的整型存储机制是这样的。比方要表示一个很大的数:123456789。而每个元素只能表示3位十进制数(为理解打的比方)。那么python就会这样存储:
ob_digit[0]=789
ob_digit[1]=456
ob_digit[2]=123
低位存于低索引下。python中整型结构中的数组,每个元素存储15位的二进制数(不同位数操作系统有差异32位系统存15位,64位系统是30位)。
因此,sys.getsizeof(0)数组元素为0。此时占用24字节(PyObject_VAR_HEAD的大小)。sys.getsizeof(456)需使用一个元素,因此多了4个字节。
以上内容为大家介绍了Python中int占几个字节,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

相关推荐HOT
更多>>
python字符串需要注意的语法问题
python字符串需要注意的语法问题语法错误是经常发生的一个错误。当一个程序包含非法的Python代码时,会产生语法错误。举例来说,在包含单引号的...详情>>
2023-11-14 18:23:24
python函数标注是什么
python函数标注是什么在参数的使用方法中,还有一种解包的情况是需要我们掌握的。比如,将列表或者字典的值转换为函数的参数,就需要用到参数解...详情>>
2023-11-14 14:13:35
python正负索引的使用
python正负索引的使用本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、说明使用正索引(从左至右)、负索引(从右至左)访问元素,时...详情>>
2023-11-14 13:45:04
python垃圾回收的机制过程
python垃圾回收的机制过程本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、步骤(1)收集所有容器对象(list,dict,tuple,customClas...详情>>
2023-11-14 13:05:15