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求和函数sum()详解
今天在学习的过程中,误用sum()函数,我又去查了查pythonsum()函数才恍然大悟。我本来想算几个Int值相加的和,本以为很简单的事情,结果却很悲...详情>>
2023-11-09 23:36:32
python子类可以调用父类方法吗
python中的子类中的__init__()函数会覆盖父类的函数,一些情况往往需要在子类里调用父类函数。如下例程里,处是需要调用父类函数的地方,接下来...详情>>
2023-11-09 20:20:51
python json.loads失败怎么办
json.loadsPython错误:1、'utf8'codeccan'tdecodebyte...由于需求,要用python读取网页返回json,并取得其中的数据但是却遇到以...详情>>
2023-11-09 16:41:05
python如何安装第三方函数库
python安装第三方库有两种方式:1.使用pip命令行工具在线下载你需要的第三方库2.手动下载第三方库,再使用pip命令安装1.使用pip命令行工具在线...详情>>
2023-11-09 16:01:37