定长对象与不定长对象:
整数对象保存的特殊信息是一个C中的整形变量,无论数值有多大,占用的内存大小都是一样的,比如1和100都是一样的;(为什么定长?考虑内存寻址) :warning:
而变长对象的不同对象占用的内存可能是不一样的,例如“python”和“ruby”占用的内存大小就不一样
[object.h]define PyObject_VAR_HEAD\
PyObject_HEAD
int ob_size
typedef struct {
PyObject_VAR_HEAD
} PyVarObject
ob_size就是指所容纳元素的个数,而不是子节的数量。比如某一个时刻,某个list中含有5个元素,那么ob_size的值就是5