F1
1.python包至少包括 一 解释器 二 支持库
2.下载⏬地址 http://www.python.org
3.python执行 首先编译为与平台无关的字节码 .pyc(后缀)
4.没有被修改的源代码会跳过编译步骤 只有 源文件被修改 python版本改变 才会重新编译字节码文件 .pyc
5. python虚拟机(PVM)不是独立程序 不需安装 就是迭代运行字节码指令的一个大循环 一个一个完成操作 引擎
6.字节码不是二进制码 是特定于python的一种表现形式
7.
8.python与其他经典解释器不同 仍有内部编译步骤 最终效果运行速度介于 传统编译语言 与解释语言之间
9.python所有事情在程序运行时发生 更有动态编程体验
S2
1.python语言的五中实现模式CPython Jython IronPythoon Stackless pypy
2.Cpython标准Python 由可移植的C语言代码编写而成 脚本化c c++组件
3.Jpython 基于java 将python源代码编译为 Java字节码 最终跑在java虚拟机上(JVM)目的脚本化Java程序 相较于Cpython不够快也不够健壮但迎合了java开发人员的诉求
4.IronPython 目的集成.NET框架 与mono编写成的应用
5.Stackless 针对Cpython并发性的优化 不会在C语言调用栈上保存状态.使得Python更容易移植到较小的栈架构中 其创造 微线程 是Python原生多线程工具的一个更高效 更轻量的替代品。
6.pypy 提供一个即时编译器(JIT) 支持Stackless的微线程 前身 psyco 将字节码中的一部分直接转换成运行速度更快的二进制机器代码(仍是运行时发生) 这样速度更快 占用更少的内存
兼容Cpython解释器集成回溯即时编译器
7.Cython python c的混合体 与Cpython不完全兼容 对于包装外部c库以及提高python的c扩展编码效率很有用
8.Shed Skin python到c++的转换器 尝试将python代码编译成c++代码 之后用c++编译器编译为机器代码
9.psyco 原先即时编译器 不是python的实现方式 是可以让程序运行的更快的扩展字节码执行模块组件 过时pypy前身 是对PVM的增强工具 原理与pypy同 JIT
T3
1.冻结二进制文件 frozen binary 能够让python程序独立的二进制可执行代码 可执行程序 可以不安装python环境而独立运行 将字节码 PVM python支持文件捆绑在一起的单独文件包 结果是一个单独可执行的二进制程序 如.exe文件 与最初源代码运行速度完全相同 文件并不小包括一个PVM 终端用户无需安装python即可执行