资料介绍
Python是一种半编译半解释型运行环境。首先,它会在模块“载入”时将源码编译成字节码(ByteCode)。而后,这些字节码会被虚拟机在一个“巨大”的核心函数里解释执行。这是导致Python性能较低的重要原因,好在现在有了内置Just-in-time二次编译器的PyPy可供选择。
当虚拟机开始运行时,它通过初始化函数完成整个运行环境设置:
创建解释器和主线程状态对象,这是整个进程的根对象。
初始化内置类型。数字、列表等类型都有专门的缓存策略需要处理。
创建_ builtin_ 模块,该模块持有所有内置类型和函数。
创建sys模块,其中包含了sys. path、 modules等重要的运行期信息。
初始化import机制。
初始化内置Exception。
创建_ _main_ 模块,准备运行所需的名字空间。
通过site py将site- packages中的第三方扩展库添加到搜索路径列表。
执行入口py文件。执行前会将_ main_ ._ dict_ 作为 名字空间传递进去。
程序执行结束。
执行清理操作,包括调用退出函数,GC清理现场,释放所有模块等。
终止进程。
Python源码是个宝库,其中有大量的编程范式和技巧可供借鉴,尤其是对内存的管理分配。个人建议有C基础的兄弟,在闲暇时翻看一二 。
先有类型(Type),而后才能生成实例(Instance)。Python 中的一切都是对象,包括类型在内的每个对象都包含一个标准头,通过头部信息就可以明确知道其具体类型。
头信息由“引用计数”和“类型指针”组成,前者在对象被引用时增加,超出作用域或手工释放后减小,等于0时会被虛拟机回收(某些被缓存的对象计数器永远不会为0)。
1.4内存管理
为提升执行性能,Python 在内存管理上做了大量工作。最直接的做法就是用内存池来减少操作系统内存分配和回收操作,那些小于等于256字节对象,将直接从内存池中获取存诸空间。
根据需要,虚拟机每次从操作系统申请-块256KB,取名为arena的大块内存。并按系统页大小,划分成多个pool。每个pool继续分割成n个大小相同的block,这是内存池最小存储单位。
- 半导体收音机浅谈的PDF电子书免费下载 162次下载
- 深度学习入门:基于Python的理论与实现电子书 30次下载
- python机器学习笔记资料免费下载 39次下载
- 光学谐振腔的图解分析与设计方法的PDF电子书免费下载 123次下载
- 入门级python教程之Python基本参考的电子书免费下载 1次下载
- 高级电力电子的学习课件PDF电子书免费下载 23次下载
- micropython中文教程第二版电子书免费下载 0次下载
- FPGA入门教程之HELLO FPGA软件工具篇PDF电子书免费下载 76次下载
- 写给文科生看的编程入门Python管窥PDF电子书免费下载 6次下载
- python入门教材电子书合集免费下载 30次下载
- 电冰箱快速维修PDF电子书免费下载 43次下载
- 家电维修1128例PDF电子书免费下载 188次下载
- Python基础教程之Python快速入门课件资料免费下载 314次下载
- 树莓派Python编程指南中文.pdf 0次下载
- Python核心编程(中文第二版) 0次下载
- 深度学习常用的Python库 361次阅读
- Python中Excel转PDF的实现步骤 787次阅读
- 如何安装Python解释器 5202次阅读
- 如何搭建Python编程环境 4945次阅读
- Python怎么批量生成PDF文档 972次阅读
- 如何使用Python直接给微信推送消息 1854次阅读
- 新手指南:8个好用的Python工具 2365次阅读
- 最新的编程语言排行说明Python冲上第二 2658次阅读
- Python的Anaconda入门指南 2496次阅读
- Python开发人员年度调查来了! 1945次阅读
- 如何快速学习Python?学习Python有哪些坑? 3808次阅读
- 机器学习入门宝典《统计学习方法》的介绍 4488次阅读
- 机器学习和数据科学必读的10本免费在线电子书和书的详细介绍 6586次阅读
- 机器学习实例:Spark与Python结合设计 2706次阅读
- 如何使用python进行第一个机器学习项目(详细教程篇) 1.6w次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1491次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 95次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 11次下载 | 免费
- 6100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 4次下载 | 免费
- 8基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537793次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多