什么样的Python开始?

时间:2012-06-20 20:03:51

标签: python ironpython jython pypy python-stackless

我想学习python,所以我从python网站下载了它,我看到其他4种蟒蛇出现了:

  • Python(普通)
  • IronPython的
  • 的Jython
  • PyPy
  • Stackless Python

我真的可以找到它们之间的差异。 还有哪一个最好开始。

3 个答案:

答案 0 :(得分:10)

已更新,其中包含评论部分中善意人员的更正:

在你提到的python实现中,原始的和最常用的是CPython(你的列表中的python - 它是用C语言实现并作为本机应用程序运行的python的解释器),并且可用于几乎所有平台下的太阳。其他变种是:

  • IronPython:在.Net公共运行时运行(与其他.Net应用程序更清晰地接口)
  • Jython:在JVM上运行(与Java和其他JVM应用程序的接口更加干净)
  • PyPy:一个Python解释器,它包含一个即时编译器,可以显着提高程序执行性能。解释器和JIT在RPython(而不是C)中实现,这是Python的一个受限子集,可以进行静态分析和类型推断。
  • Stackless Python:python解释器的一个实现,它不依赖于本机C运行时堆栈上的递归,因此允许加载CPython中没有的其他有趣的编程结构和技术(包括轻量级线程)。

Python有很多种库(该语言的主要优点之一),其中大多数是为CPython开发的。出于多种兼容性原因,上述变体目前都不支持与主要实现一样多的变体。因此,CPython是最好的起点,如果您的未来需求适合其他平台之一 - 您将在一个很好的地方学习基础知识的基础变化。

答案 1 :(得分:4)

的Python。您将学习语言的所有文档都假定这一点。然后,如果您发现需要其他实现,文档将假定您了解Python并解释其中的差异。

答案 2 :(得分:3)

从Python开始。

替代方案适用于特殊用例,主要适用于将Python与其他语言集成的情况,这是该语言的一种非常高级的用法。