Demystifying Python, CPython, Cython, PyPy & PyPI

Let's identify and clear the confusion about some common terms related to Python.

CPython: The official, reference implementation of Python, with two major releases: Python 2 and Python 3. It works as a Python source code interpreter and it is written in C. It is maintained by the Python Software Foundation.

Cython: A widely used optimising Python-to-C compiler. The Cython language is a superset of the Python language that additionally supports calling C functions and declaring C types on variables and class attributes. This allows the compiler to generate very efficient C code from Cython code.

There are also some other stable and common Python implementations.

Jython: Written in Java for the JVM.

IronPython: Written in C# for the .NET and Mono platform.

PyPy: Python implementation in Python. Thanks to its Just-In-Time compiler, Python programs often run faster on PyPy.

Meanwhile, PyPI does not refer to another implementation of Python. It stands for Python Package Index - the official third-party software repository for the Python programming language.