美文网首页
Python 解释器

Python 解释器

作者: tafanfly | 来源:发表于2019-02-12 17:10 被阅读0次

    简介

    当人们谈论起Python,他们不仅在说语言本身,还包括其具体实现。

    就好比C++是一套语言(语法)标准,但是可以用不同的编译器来编译成可执行代码。有名的编译器例如GCC,INTEL C++,Visual C++等。Python也一样,同样一段代码可以通过CPython,PyPy,Jpython等不同的Python执行环境来执行。

    Cpython

    一般情况下称呼的python就是指Cpython, 为了区别其他语言及避免歧义通常称为CPython。

    • C语言实现的Pyhon,应用最广泛
    • 把Python代码编译成中间态的字节码,然后由虚拟机解释
    • 适合开源项目以及依赖C扩展包的项目

    • GIL(全局锁)使Python在多线程效能上表现不佳, GIL 只在Cpython有
    • 无法支持JIT(即时编译)使Python执行速度较差

    PyPy

    是用RPython实现的解释器。RPython是Python的子集, 具有静态类型。

    • 支持JIT(即时编译), 速度性能上得到了提升
    • 支持多重后端(C, CLI, JVM)
    • 支持Python 2, 支持Python 3

    • 不支持官方的C/Python API, 导致许多重要的第三方库无法使用

    Jpython

    是一个将python代码编译成java字节码的实现

    • 主要运行在JVM上, 可以导入并使用任何Java类

    • 支持Python 2.7

    IronPython

    是一个针对.NET框架的Python实现

    • 可以用Python和.NET famework的库
    • 也能将Python代码暴露给给.NET框架中的其他语言
    • 适合Windows环境的开发

    • 支持Python 2.7

    PythonNet

    是一个近乎无缝集成的, 提供给本机已安装的Python .NET公共语言运行时(CLR)包。

    • 与IronPython互补
    • 可以在除外IronPython的环境中无冲突运行

    • 支持Python 2.3-2.7

    参考

    选择一个 Python 解释器

    相关文章

      网友评论

          本文标题:Python 解释器

          本文链接:https://www.haomeiwen.com/subject/axukeqtx.html