Several implementation versions of the [Python] Interpreter

Source: Internet
Author: User
Tags python script

Several implementation versions of the Python interpreter

We all know that the Python interpreter has a lot of implementations, there are C, Java, and Python, and so on, corresponding to the Cpython,jython, has been relatively fire pypy, today to take stock of these versions (not necessarily very full)

CPython

CPython is the default Python implementation, an environment or an interpreter (which you would call if you like). Scripts are run in this interpreter in most cases. CPython is an official Python interpreter that is implemented exactly as Python's specifications and language definitions, so it is used as a reference version of other versions. CPython is written in C, and Pythond code is converted to bytecode (bytecode) when the code is executed. So CPython is a byte-code interpreter. When we download the installation package from the Python website, or install it through a similar "Apt-get" or "yum" tool, we install the CPython version.

PyPy

*PyPy * is a lot of places and CPython very similar to the implementation, but the interpreter itself is written by Python. This means that developers have written a Python interpreter in Python. However, the code for this interpreter is first converted to C and then compiled. PyPy is considered to be better than CPython performance. Because CPython will convert the code into bytecode, PyPy will convert the code into machine code.

Psyco

Psyco is a similar pypy, but a good interpreter. has now been replaced by the pypy, if possible, the use of PyPy to replace the Psyco.

Jython

Jython is an interpreter implemented in Java. Jython allows programmers to write Python code, and it can also be used to load Java modules into a Python module. Jython uses JIT technology, which means that the runtime Python code is first converted to Java bytecode (not Java source code) and then executed using the JRE. Programmers can also use Jython to make Python code into jar packages, which can be used directly as a jar packaged with Java programs. This allows Python programmers to write Java programs. However, it is important to know which Java modules can be used in Jython, and then use the Python syntax to write the program. Jython is compatible with Python2, and you can also use the command line to write interactive programs.

IronPython

IronPython is implemented using the C # language, and can be used in the. NET and Mono platform interpreters. IronPython is Silverlight-compatible and can be executed directly in the browser with Gestalt. IronPython is also compatible with Python2.

Tip:mono is provided. Open source framework for net-compatible tools.

Clpython

Clpython is an interpreter implemented with Common Lisp and is not now advocated for use. It allows Python and Common Lisp to be used in mixed code. Compatible with Python2.

PyS60

PyS60 (Python for S60) is an implementation version of the Nokia S60 platform that is deprecated.

ActivePython

ActivePython is an implementation that is based on CPython and then adds a series of extensions. was released by ActiveState. Python2 and Python3 are compatible.

Cython

Cython (not CPython) is an implementation that allows for the conversion of Python code into C + + code or the use of a variety of C + + modules/files. In other words, Cython is a bridge between C + + and Python. Cython is also a dialect of Python. Developers can also use Cython to execute Python scripts, and perform more efficiently than CPython. In addition, developers can write a Python script that uses Cython to compile (Linux . So or. dll on Windows ) class libraries and then use them as a Python module. The Cython script uses *.pyx as an extension. Cython compatible with Python2 and Python3.

Tips:python module modules and Class library libraries is a thing, just a different term.

Qpython

Qpython is an Android interface for the CPython interpreter. Qpython the Android module from Python. Qpython can be found on Google play.

Kivy

Kivy is an open source framework (using the Python interpreter) that can run on Android, IOS, Windows, Linux, MeeGo, Android SDK, and OS x platforms. Support for Python3, developers are developing PYTHON3 on their compatible cython.

sl4a

sl4a (Scripting layer for Android) is a compatibility layer that allows Android to execute various scripting languages. SL4A has a lot of modules, we are more concerned about "py4a" (Python for Android). PY4A is a kind of CPython on the Android stage.

Other

There are many other different implementations. For example Wpython,dspython see Wiki.

Orangleliu#gmail.com

Ref:python Tools and Software Wiki

This article is derived from "Orangleliu notebook " Blog, be sure to keep this source http://blog.csdn.net/orangleliu/article/details/39204897

Several implementation versions of the [Python] Interpreter

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.