当前位置:主页 > 计算机电子书 > 程序设计 > Python源码下载
Python源码剖析:深度探索动态语言核心技术

Python源码剖析:深度探索动态语言核心技术 PDF 全书完整版

  • 更新:2024-03-21
  • 大小:29.1 MB
  • 类别:Python源码
  • 作者:陈儒
  • 出版:电子工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

《Python源码剖析》是深入探索Python内部机制的宝贵资料,它不仅剖析了Python语言的设计哲学,还透彻讲解了其运行原理,读者通过阅读本书可以获得对Python解释器底层工作原理的深入理解,包括对象模型、数据结构、解析机制以及执行引擎等核心组成部分,对于有志于深化Python技能的开发者,这本书展现了一个全新的视角,让读者能够通过了解底层原理来优化自己的代码,并为可能的问题解决提供线索,本书内容详实,案例丰富,是那些渴望从事Python深度开发和性能优化的开发者的理想选择。

Python源码剖析:深度探索动态语言核心技术》合适于Python程序猿、动态性語言发烧友、C程序猿阅读文章。

做为流行的动态性語言,Python不但简易易懂、移植性好,并且有着强劲丰富多彩的库的适用。除此之外,Python强劲的扩展性,让开发者既能够 容易地运用C/C++撰写Python的拓展控制模块,还能将Python置入到C/C++程序流程中,给自己的系统软件加上动态性拓展和动态性程序编写的工作能力。

为了方便运用Python語言,不论是应用Python語言自身,還是将Python与C/C++互动应用,深刻领会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.1.1 对象机制的基石——PyObject
  • 1.1.2 定长对象和变长对象
  • 1.2 类型对象
  • 1.2.1 对象的创建
  • 1.2.2 对象的行为
  • 1.2.3 类型的类型
  • 1.3 PYTHON对象的多态性
  • 1.4 引用计数
  • 1.5 PYTHON对象的分类
  • 第2章 PYTHON中的整数对象
  • 2.1 初识PYINTOBJECT对象
  • 2.2 PYINTOBJECT对象的创建和维护
  • 2.2.1 对象创建的3种途径
  • 2.2.2 小整数对象
  • 2.2.3 大整数对象
  • 2.2.4 添加和删除
  • 2.2.5 小整数对象池的初始化
  • 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.2.1 创建对象
  • 4.2.2 设置元素
  • 4.2.3 插入元素
  • 4.2.4 删除元素
  • 4.3 PYLISTOBJECT对象缓冲池
  • 4.4 HACK PYLISTOBJECT
  • 第5章 PYTHON中的DICT对象
  • 5.1 散列表概述
  • 5.2 PYDICTOBJECT
  • 5.2.1 关联容器的entry
  • 5.2.2 关联容器的实现
  • 5.3 PYDICTOBJECT的创建和维护
  • 5.3.1 PyDictObject对象创建
  • 5.3.2 PyDictObject中的元素搜索
  • 5.3.3 插入与删除
  • 5.3.4 操作示例
  • 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.2.1 PyCodeObject对象与pyc文件
  • 7.2.2 Python源码中的PyCodeObject
  • 7.2.3 pyc文件
  • 7.2.4 在Python中访问PyCodeObject对象
  • 7.3 PYC文件的生成
  • 7.3.1 创建pyc文件的具体过程
  • 7.3.2 向pyc文件写入字符串
  • 7.3.3 一个PyCodeObject,多个PyCodeObject
  • 7.4 PYTHON的字节码
  • 7.5 解析PYC文件
  • 第8章 PYTHON虚拟机框架
  • 8.1 PYTHON虚拟机中的执行环境
  • 8.1.1 Python源码中的PyFrameObject
  • 8.1.2 PyFrameObject中的动态内存空间
  • 8.1.3 在Python中访问PyFrameObject对象
  • 8.2 名字、作用域和名字空间
  • 8.2.1 Python程序的基础结构——module
  • 8.2.2 约束与名字空间
  • 8.2.3 作用域与名字空间
  • 8.3 PYTHON虚拟机的运行框架
  • 8.4 PYTHON运行时环境初探
  • 第9章 PYTHON虚拟机中的一般表达式
  • 9.1 简单内建对象的创建
  • 9.2 复杂内建对象的创建
  • 9.3 其他一般表达式
  • 9.3.1 符号搜索
  • 9.3.2 数值运算
  • 9.3.3 信息输出
  • 第10章 PYTHON虚拟机中的控制流
  • 10.1 PYTHON虚拟机中的IF控制流
  • 10.1.1 研究对象--if_control.py
  • 10.1.2 比较操作
  • 10.1.3 指令跳跃
  • 10.2 PYTHON虚拟机中的FOR循环控制流
  • 10.2.1 研究对象——for_control.py
  • 10.2.2 循环控制结构的初始化
  • 10.2.3 迭代控制
  • 10.2.4 终止迭代
  • 10.3 PYTHON虚拟机中的WHILE循环控制结构
  • 10.3.1 研究对象——while_control.py
  • 10.3.2 循环终止
  • 10.3.3 循环的正常运转
  • 10.3.4 循环流程改变指令之continue
  • 10.3.5 循环流程改变指令之break
  • 10.4 PYTHON虚拟机中的异常控制流
  • 10.4.1 Python中的异常机制
  • 10.4.2 Python中的异常控制语义结构
  • 第11章 PYTHON虚拟机中的函数机制
  • 11.1 PYFUNCTIONOBJECT对象
  • 11.2 无参函数调用
  • 11.2.1 函数对象的创建
  • 11.2.2 函数调用
  • 11.3 函数执行时的名字空间
  • 11.4 函数参数的实现
  • 11.4.1 参数类别
  • 11.4.2 位置参数的传递
  • 11.4.3 位置参数的访问
  • 11.4.4 位置参数的默认值
  • 11.4.5 扩展位置参数和扩展键参数
  • 11.5 函数中局部变量的访问
  • 11.6 嵌套函数、闭包与DECORATOR
  • 11.6.1 实现闭包的基石
  • 11.6.2 闭包的实现
  • 11.6.3 Decorator
  • 第12章 PYTHON虚拟机中的类机制
  • 12.1 PYTHON中的对象模型
  • 12.1.1 对象间的关系
  • 12.1.2 和
  • 12.2 从TYPE对象到CLASS对象
  • 12.2.1 处理基类和type信息
  • 12.2.2 处理基类列表
  • 12.2.3 填充tp_dict
  • 12.3 用户自定义CLASS
  • 12.3.1 创建class对象
  • 12.4 从CLASS对象到INSTANCE对象
  • 12.5 访问INSTANCE对象中的属性
  • 12.5.1 instance对象中的__dict__
  • 12.5.2 再论descriptor
  • 12.5.3 函数变身
  • 12.5.4 无参函数的调用
  • 12.5.5 带参函数的调用
  • 12.5.6 Bound Method和Unbound Method
  • 12.6 千变万化的DESCRIPTOR
  • 第3部分 PYTHON高级话题
  • 第13章 PYTHON运行环境初始化
  • 13.1 线程环境初始化
  • 13.1.1 线程模型回顾
  • 13.1.2 初始化线程环境
  • 13.2 系统MODULE初始化
  • 13.2.1 创建__builtin__ module
  • 13.2.2 创建sys module
  • 13.2.3 创建__main__ module
  • 13.2.4 设置site-specific的module的搜索路径
  • 13.3 激活PYTHON虚拟机
  • 13.3.1 交互式运行方式
  • 13.3.2 脚本文件运行方式
  • 13.3.3 启动虚拟机
  • 13.3.4 名字空间
  • 第14章 PYTHON模块的动态加载机制
  • 14.1 IMPORT前奏曲
  • 14.2 PYTHON中IMPORT机制的黑盒探测
  • 14.2.1 标准import
  • 14.2.2 嵌套import
  • 14.2.3 import package
  • 14.2.4 from与import
  • 14.2.5 符号重命名
  • 14.2.6 符号的销毁与重载
  • 14.3 IMPORT机制的实现
  • 14.3.1 解析module/package树状结构
  • 14.3.2 加载module/pakcage
  • 14.3.3 from与import
  • 14.4 PYTHON中的IMPORT操作
  • 14.4.1 import module
  • 14.4.2 import package
  • 14.4.3 from & import
  • 14.4.4 import & as
  • 14.4.5 reload
  • 14.4.6 内建module:imp
  • 14.5 与MODULE有关的名字空间问题
  • 第15章 PYTHON多线程机制
  • 15.1 GIL与线程调度
  • 15.2 初见PYTHON THREAD
  • 15.3 PYTHON线程的创建
  • 15.3.1 建立多线程环境
  • 15.3.2 创建线程
  • 15.4 PYTHON线程的调度
  • 15.4.1 标准调度
  • 15.4.2 阻塞调度
  • 15.5 PYTHON子线程的销毁
  • 15.6 PYTHON线程的用户级互斥与同步
  • 15.6.1 用户级互斥与同步
  • 15.6.2 Lock对象
  • 15.7 高级线程库——THREADING
  • 15.7.1 Threading Module概述
  • 15.7.2 Threading的线程同步工具
  • 15.7.3 Threading中的Thread
  • 第16章 PYTHON的内存管理机制
  • 16.1 内存管理架构
  • 16.2 小块空间的内存池
  • 16.2.1 Block
  • 16.2.2 Pool
  • 16.2.3 arena
  • 16.2.4 内存池
  • 16.3 循环引用的垃圾收集
  • 16.3.1 引用计数与垃圾收集
  • 16.3.2 三色标记模型
  • 16.4 PYTHON中的垃圾收集
  • 16.4.1 可收集对象链表
  • 16.4.2 分代的垃圾收集
  • 16.4.3 Python中的标记-清除方法
  • 16.4.4 垃圾收集全景
  • 16.4.5 Python中的gc模块
  • 16.4.6 总结

资源下载

资源下载地址1:https://pan.quark.cn/s/e42eb82aeaf4

相关资源

网友留言