资料介绍
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电子书免费下载 171次下载
- 深度学习入门:基于Python的理论与实现电子书 32次下载
- python机器学习笔记资料免费下载 39次下载
- 入门级python教程之Python基本参考的电子书免费下载 1次下载
- 高级电力电子的学习课件PDF电子书免费下载 23次下载
- micropython中文教程第二版电子书免费下载 0次下载
- 简明python教程的中文版PDF电子书免费下载 0次下载
- FPGA入门教程之HELLO FPGA软件工具篇PDF电子书免费下载 90次下载
- 写给文科生看的编程入门Python管窥PDF电子书免费下载 7次下载
- python入门教材电子书合集免费下载 31次下载
- 电冰箱快速维修PDF电子书免费下载 51次下载
- 家电维修1128例PDF电子书免费下载 207次下载
- Python基础教程之Python快速入门课件资料免费下载 319次下载
- 树莓派Python编程指南中文.pdf 0次下载
- Python核心编程(中文第二版) 0次下载
- 深度学习常用的Python库 681次阅读
- Python中Excel转PDF的实现步骤 1209次阅读
- 如何安装Python解释器 5408次阅读
- 如何搭建Python编程环境 5211次阅读
- Python怎么批量生成PDF文档 1168次阅读
- 如何使用Python直接给微信推送消息 2105次阅读
- 新手指南:8个好用的Python工具 2472次阅读
- 最新的编程语言排行说明Python冲上第二 2741次阅读
- Python的Anaconda入门指南 2674次阅读
- Python开发人员年度调查来了! 2022次阅读
- 如何快速学习Python?学习Python有哪些坑? 3942次阅读
- 机器学习入门宝典《统计学习方法》的介绍 4682次阅读
- 机器学习和数据科学必读的10本免费在线电子书和书的详细介绍 6745次阅读
- 机器学习实例:Spark与Python结合设计 2781次阅读
- 如何使用python进行第一个机器学习项目(详细教程篇) 1.6w次阅读
下载排行
本周
- 1STM32开发板教程之STM32开发指南免费下载
- 24.88 MB | 176次下载 | 3 积分
- 2EN60335-1安规标准 中文版本
- 1.86 MB | 52次下载 | 1 积分
- 3LT7406FJ N沟道增强型功率MOSFET规格书
- 1.38 MB | 2次下载 | 免费
- 4STM32系列产品选型-中文
- 1.81 MB | 1次下载 | 免费
- 5LTS6802FJCB N沟道增强型功率MOSFET规格书
- 1.00 MB | 1次下载 | 免费
- 6运算放大电路入门教程
- 0.70 MB | 1次下载 | 免费
- 7米尔-瑞芯微RK3562核心板开发板,4核CPU,ARM中量级多面手
- 3.45 MB | 1次下载 | 免费
- 8开源鸿蒙版真4K显示器广告机主板AIoT-6780SE彩页
- 613.79 KB | 1次下载 | 免费
本月
- 1STM32开发板教程之STM32开发指南免费下载
- 24.88 MB | 176次下载 | 3 积分
- 2DeepSeek:从入门到精通
- 5.36 MB | 92次下载 | 1 积分
- 3EN60335-1安规标准 中文版本
- 1.86 MB | 52次下载 | 1 积分
- 4OAH0428最新规格书(中文)
- 2.52 MB | 27次下载 | 10 积分
- 5UHV系列雷电冲击电压发生器试验装置详细说明使用
- 1.07 MB | 17次下载 | 免费
- 6Altium-常用3D封装库(Step)接插件篇
- 4.95 MB | 14次下载 | 免费
- 7介绍一些常用的电子元器件
- 3.20 MB | 7次下载 | 免费
- 8麻将机升降电路
- 0.12 MB | 6次下载 | 1 积分
总榜
- 1matlab软件下载入口
- 未知 | 935124次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420063次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233088次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191371次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183336次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81583次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73814次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65988次下载 | 10 积分
电子发烧友App






创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论