【有书共读21】Python编程之美 01


python是一门当前流行的编程语言。
目前python有两个版本的解析器:python2和python3。如何选择解析器是一个命题:
  • 在python3之前,python2一直是标准选择;
  • python3的设计,没有完全兼容python2,在设计上与python2存在一些差异。

如何选择解析器的版本:
  • 如果是新手或者不知道选择哪一个的话,建议选择python3;
  • 若有特殊原因,如影响系统稳定性、性能或者依赖的软件限制则使用python2;

在选择了解析器后,则需要根据所需,选择python的实现了。不同的实现,其兼容性、运行效率各有不同。

CPython:是标准Python,是其他python的参考性实现。通常提的“Python”,一般是指cpython。cpython由C编写,它将Python代码编译成cpython字节码,由虚拟机解释执行。cpython对python包和C扩展模块的兼容性最好。
若是编写开源python,如果想覆盖更多的潜在用户,则使用cpython;如果python包依赖与C扩展,最好选择cpython。

Stackless:是在cpython上的优化;主要将python解析器与调用栈解耦,从而实现改变代码执行次序。stackless引入了tasllet,它可以封装函数,将其变为"微线程"。

Pypy:是用rpython实现的python解析器。它可以推断出变量的类型,从而实现一些优化策略。它的特色是JIT编译器,支持多种编译器后端。pypy的目标在于提升性能的同时尽可能最大程度兼容cpython。
如果想提升python性能,可以考虑pypy。

Jython:可以将python代码编辑为java字节码,再由JVM执行。jython能够像python一样导入并使用任意java类。
如果需要与java代码库交互,或基于jvm编写python代码,则选择jython。

IronPython:专为.net框架准备的python实现。可同时使用python和.net框架的代码库。
visual studio的python工具集将ironpython集成到visual studio开发环境,因此在Windows平台开发,可以考虑ironpython。

PythonNet:近乎无缝地将.net中间语言运行集成到python环境中。pythonnet使非Windows操作系统能够在.net框架中使用。与ironpython使用方式相反,可以同时存在。两者是一种互补关系。

Skulpt:是python的一个JavaScript实现。未完全移植到cpython标准库。可实现简单的math、random、turtle、image、unittest、time、urllib、dom等。主要用于教学。

MicroPython:是python3的一个实现。主要在微控制器上运行进行了针对性优化。不仅包含python标准库的模块,还提供了硬件细节、内存信息、网络访问等信息。

#Python#
全部评论

相关推荐

02-15 14:18
已编辑
江西工程学院 Java
董春花_:个人建议1. 排版极简化,别花花绿绿的。2.专业技能不必要介绍那么详细。什么熟练熟悉精通没必要。按照语言,工具framework等等这种划分一下就行。3.项目介绍的太泛泛了,非常空洞。你新增了什么功能?修改了什么功能?怎么做的? 4.再做个项目放上去吧。 学历不行就只能拼能力了,先有个班上,然后跳。干就完了
Java求职圈
点赞 评论 收藏
分享
狸猫换offer:神通广大的互联网
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务