1.1Python语言的历史介绍和实现方式

Python的创始人为吉多·范罗苏姆,当时他在阿姆斯特丹的荷兰数学和计算机科学研究学会工作。1989年的圣诞节期间,吉多·范罗苏姆为了在打发时间,决心开发一个新的脚本解释编程,作为ABC语言的一种继承,替代使用Unix shell和C语言进行系统管理,担负同Amoeba操作系统的交互和异常处理。第一版发布于1991年,它是ABC语言的后继者,也可以视之为一种使用传统中缀表达式的LISP方言。之所以选中Python作为编程的名字,是因为他是BBC电视剧——(Monty Python)蒙提·派森的飞行马戏团的爱好者。范罗苏姆作为Python的主要开发者独自担负这个项目的职责,直到2018年7月12日,他宣布从作为终身仁慈独裁者(BDFL)的职责上“永久休假”,Python社区向他授予这个头衔反映了他长期担任整个Python语言的发展方向的决策者。他在2019年1月至11月参与了一个五人掌控委员会继续领导项目发展。

Python解释器本身几乎可以在所有的操作系统中运行。Python的官方解释器CPython是用C语言编写的,它是一个由社区驱动的自由软件,目前由Python软件基金会管理。

实现方式

Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,根据该规则可编写Python解释器。

  • CPython,官方的解释器,需要区别于其他解释器的时候才以CPython称呼。这是最常用的Python版本。
  • MicroPython和CircuitPython,是为微控制器而优化的Python 3变体。
  • PyPy,RPython实现的Python,是快速的规矩的Python 2.7和3.6解释器。它的即时编译器带来了超过CPython的显著速度提升,但是它不能使用一些用C写的库。
  • Stackless Python, 是实现微线程的CPython的重要分叉;它不使用C内存堆栈,因而允许大规模并发程序。PyPy也有无堆栈版本。
  • Jython,Java实现的Python。Jython可以直接调用Java的各种函数库。
  • IronPython,面向.NET和ECMA CLI的Python实现。IronPython能够直接调用.net平台的各种函数库。可以将Python程序编译成.net程序。

到其他语言的交叉编译器

  • Cython,把Python编译成C和C++。
  • Numba,使用LLVM把Python编译成机器码。
  • RPython,可以编译成C,并被用来建造Python的PyPy解释器。
  • MyHDL,把Python编译成VHDL。
  • Nuitka,把Python编译成C++。
  • Pythran,把Python编译成C++。
  • Google的Grumpy(最近发行于2017年),把Python 2编译成Go。
  • Shed Skin(最近发行于2013年),把Python编译成C++。
  • Pyjs(最近发行于2012年),把Python编译成JavaScript。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/python/pythonbasic/2648.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注