PyObject是整个Python对象机制的核心
[object.h]
typedef struct _object {
PyObject_HEAD
} PyObject;
[object.h]
#ifdef Py_TRACE_REFS
/* Define pointers to support a doubly-linked list of all live heap objects. */
#define _PyObject_HEAD_EXTRA \
struct _object *_ob_next; \
struct _object *_ob_prev;
#define _PyObject_EXTRA_INIT 0, 0,
#else
#define _PyObject_HEAD_EXTRA
#define _PyObject_EXTRA_INIT
#endif
/* PyObject_HEAD defines the initial segment of every PyObject. */
#define PyObject_HEAD \
_PyObject_HEAD_EXTRA \
Py_ssize_t ob_refcnt; \
struct _typeobject *ob_type;
在实际发布的Python中PyObject的定义非常简单
[object.h]
typedef struct _object {
int ob_refcnt;//引用计数
struct _typeobject *ob_type;
} PyObject;
这里的ob_refcnt是引用计数。ob_type???让我们看看这个