Cython: C-Extensions for Python

About Cython

Cython is a language that makes writing C extensions for the Python language as easy as Python itself. Cython is based on the well-known Pyrex, but supports more cutting edge functionality and optimizations.

The Cython language is very close to the Python language, but Cython 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.

This makes Cython the ideal language for wrapping external C libraries, and for fast C modules that speed up the execution of Python code.

News

We welcome Cython-related student applications for the Google Summer of Code. We are planning on going through the Python Foundation as a mentoring organization. Here is a list of possible enhancements and project ideas.

Documentation

  • Cython Users Guide (also available as a pdf)
  • The Cython Wiki.
  • Pyrex FAQ and Cython FAQ

    If you still have questions, feel free to send an email to the mailing list.

    People

    Lead Developers: Stefan Behnel, Robert Bradshaw, and Dag Sverre Seljebotn.

    Contributors: Greg Ewing, Martin Albrecht, Gustavo Barbieri, Ondrej Certik, Timothy Clemans, Lisandro Dalcín, Nicolas Dumazet, Gary Furnish, Gabriel Gellner, Brian Granger, Magnus Lie Hetland, Thomas Hunger, Kay Hayen, Jim Kleckner, Vasil Manolov, David McNab, Chris Perkins, Paul Prescod, Prabhu Ramachandran, Kirill Smelkov, Kurt Smith, William Stein, Andrew Straw, Peter Todd, Carl Witty, Felix Wu.

    Financial Contributions: Google and Enthought funded Dag Seljebotn to greatly improve Cython integration with NumPy.

    Download

    Cython is freely available under the open source Apache License.

    The latest release of Cython is 0.11.2 (released 2009-05-20). You can download it as a gzipped tar or as a zip file.

    Cython is also available from the PyPi package repository.

    Developer Links

  • Wiki
  • Mailing list and archive
  • Bug & Feature Tracker
  • Mercurial Repository