Python源码剖析

Python源码剖析

作者:陈儒

出版社:电子工业

出版年:2008年6月

评分:9.4

ISBN:9787121068744

所属分类:青春文学

书刊介绍

《Python源码剖析》内容简介

作为主流的动态语言,Python不仅简单易学、移植性好,而且拥有强大丰富的库的支持。此外,Python强大的可扩展性,让开发人员既可以非常容易地利用C/C++编写Python的扩展模块,还能将Python嵌入到C/C++程序中,为自己的系统添加动态扩展和动态编程的能力。
为了更好地利用Python语言,无论是使用Python语言本身,还是将Python与C/C++交互使用,深刻理解Python的运行原理都是非常重要的。本书以CPython为研究对象,在C代码一级,深入细致地剖析了Python的实现。书中不仅包括了对大量Python内置对象的剖析,更将大量的篇幅用于对Python虚拟机及Python高级特性的剖析。通过此书,读者能够透彻地理解Python中的一般表达式、控制结构、异常机制、类机制、多线程机制、模块的动态加载机制、内存管理机制等核心技术的运行原理,同时,本书所揭示的动态语言的核心技术对于理解其他动态语言,如 Javascript、Ruby等也有较大的参考价值。
本书适合于Python程序员、动态语言爱好者、C程序员阅读。
陈儒,计算机科学与工程专业硕士,问天(北京)信息技术有限公司技术负责人,致力于信息检索方向的研究与开发。

作品目录

第0章:Python源码剖析——编译Python
0.1、Python总体架构
0.2、Python源代码的组织
0.3、Windows环境下编译Python
0.4、Unix/Linux环境下编译Python
0.5、修改Python源代码
0.6、通往Python之路
0.7、一些注意事项
第1部分
Python内建对象
第1章:Python对象初探
1.1、Python内的对象
1.2、类型对象
1.3、Python对象的多态性
1.4、引用计数
1.5、Python对象的分类
第2章:Python中的整数对象
2.1、初识PyIntObject对象
2.2、PyIntObject对象的创建和维护
2.3、Hack
PyIntObject
第3章:Python中的字符串对象
3.1、PyStringObject与PyString_Type
3.2、创建PyStringObject对象
3.3、字符串对象的intern机制
3.4、字符缓冲池
3.5、PyStringObject效率相关问题
3.6、Hack
PyStringObject
第4章:Python中的List对象
4.1、PyListObject对象
4.2、PyListObject对象的创建与维护
4.3、PyListObject对象缓冲池
4.4、Hack
PyListObject
第5章:Python中的Dict对象
5.1、散列表概述
5.2、PyDictObject
5.3、PyDictObject的创建和维护
5.4、PyDictObject对象缓冲池
5.5、Hack
PyDictObject
第6章:最简单的Python模拟——Small
Python
6.1、Small
Python
6.2、对象机制
6.3、解释过程
6.4、交互式环境
第2部分
Python虚拟机
第7章:Python的编译结果——Code对象与pyc文件
7.1、Python程序的执行过程
7.2、Python编译器的编译结果——PyCodeObject对象
7.3、Pyc文件的生成
7.4、Python的字节码
7.5、解析pyc文件
第8章:Python虚拟机框架
8.1、Python虚拟机中的执行环境
8.2、名字、作用域和名字空间
8.3、Python虚拟机的运行框架
8.4、Python运行时环境初探
第9章:Python虚拟机中的一般表达式
9.1、简单内建对象的创建
9.2、复杂内建对象的创建
9.3、其他一般表达式
第10章:Python虚拟机中的控制流
10.1、Python虚拟机中的if控制流
10.2、Python虚拟机中的for循环控制流
10.3、Python虚拟机中的while循环控制结构
10.4、Python虚拟机中的异常控制流
第11章:Python虚拟机中的函数机制
11.1、PyFunctionObject对象
11.2、无参函数调用
11.3、函数执行时的名字空间
11.4、函数参数的实现
11.5、函数中局部变量的访问
11.6、嵌套函数、闭包与decorator
第12章:Python虚拟机中的类机制
12.1、Python中的对象模型
12.2、从type对象到class对象
12.3、用户自定义class
12.4、从class对象到instance对象
12.5、访问instance对象中的属性
12.6、千变万化的descriptor
第13章:Python运行环境初始化
13.1、线程环境初始化
13.2、系统module初始化
13.3、激活Python虚拟机
第14章:Python模块的动态加载机制
14.1、import前奏曲
14.2、Python中import机制的黑盒探测
14.3、import机制的实现
14.4、Python中的import操作
14.5、与module有关的名字空间问题
第15章:Python多线程机制
15.1、GIL与线程调度
15.2、初见Python
Thread
15.3、Python线程的创建
15.4、Python线程的调度
15.5、Python子线程的销毁
15.6、Python线程的用户级互斥与同步
15.7、高级线程库——threading
第16章:Python的内存管理机制
16.1、内存管理架构
16.2、小块空间的内存池
16.3、循环引用的垃圾收集
16.4、Python中的垃圾收集

相关推荐

微信二维码