- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 Python源码学习笔记 5 字典对象
Python中对于字典的实现是根据key进行hash生成散列表,算法为“开放定址法” 1.PyDictEntry 字典中每一个kv对,实际上就是一个entry对象 [dictobject.h] typedef struct { Py_ssize_t me_hash; /* cached hash code of me_key */ PyObject *me_ke
2017-04-23 23:27:23 440
原创 Python源码学习笔记 4 列表对象
1.PyListObject [listobject.h] typedef struct { PyObject_VAR_HEAD //其中的obsize记录实际使用内存的对象数量 PyObject **ob_item; //指向列表存储空间中第一个元素地址 int allocated; //一共分配的内存空间对象数量(含未使用),obsize } PyListObjec
2017-04-17 20:47:37 351
原创 Python源码学习笔记 3 字符串对象
1.PyStringObjecttypedef struct { PyObject_VAR_HEAD long ob_shash; //存储字符串hash值,初始为-1 int ob_sstate; //表明该字符串是否经过intend处理 char ob_sval[1];//实际存储字符串位置,默认为一个字符数组,但创建时会根据size大小扩展此空间 } PyStr
2017-04-13 16:59:54 524
原创 Python源码学习笔记 2 整数对象
Python中的整数类型是不可变对象,为了提高python运行效率,内部实现了小整数对象池(数组实现),和普通整数缓冲池(单链表实现)。1.PyIntObject 该结构仅适用2.5版本,该版本下数字长度大于long型时,对象类型会转变为PyLongObject,后续版本整合为PyIntObject,本篇文章仅讨论2.5版本 PyIntObject结构:[intobject.h] typedef
2017-04-11 00:13:30 512
原创 Python源码学习笔记 1 简述python对象
声明:本系列为本人阅读《python源码剖析》的读书笔记,如有侵权请及时告知本人openex@qq.com 1.PyObject在python中一切都是对象,而所有的对象都有相同的部分,便是PyObject 通常情况下PyObject对象中存在两个成员:引用计数和对象类型[object.h] typedef struct _object { PyObject_HEAD } PyObject
2017-04-09 22:02:54 326
C语言双人贪吃蛇源代码
2012-12-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人