Red de conocimiento informático - Material del sitio web - Cómo compilar extensiones usando Cython

Cómo compilar extensiones usando Cython

Primero, instale Cython. Como solo tengo la plataforma Windows, solo cubriré esa plataforma.

Las instrucciones en inglés se pueden encontrar en Instalación en Windows. ***Hay 2 pasos:

1. Ahora SF ya no proporciona un instalador completo, solo puede descargar el instalador en línea. Como Cython también es compatible con C++, también verifiqué el compilador g++.

Después de la instalación, agregue el directorio MinGW /bin a la variable de entorno PATH y asegúrese de que gcc --version se pueda ejecutar correctamente.

A continuación, vaya al directorio de Python \Lib\distutils y agregue un archivo distutils.cfg con el siguiente contenido:

[build]

Compiler = mingw32

En realidad, no es necesario realizar el último paso, pero debe agregar el parámetro -c para especificar el compilador cada vez que compila.

El segundo paso es instalar Cython.

Descargué la versión exe y la ejecuté directamente, pero Python 2.4 puede tener algo de trabajo adicional por hacer y no tengo esa versión para probarlo.

Entonces es hora de probar.

hw.py:

def hi():

imprimir "Hola mundo"

setup.py:

desde distutils.core import setup

desde distutils.extension import Extension

desde Cython.Distutils import build_ext

setup(

cmdclass = {' build_ext': build_ext},

text_modules = [Extensión("hw", ["hw.py"])]

)

Luego ejecute el siguiente código para compilar:

setup.py build_ext --inplace

Esto generará una cantidad de archivos, donde hw.pyd es el código C generado. extensión.

Entonces probemos:

>>> from hw import hi

>>> hi()

Hola mundo

Luego probamos el rendimiento:

csigma.py y pysigma.py:

csigma.py y pysigma.py:

csigma. y pysigma.py:

csigma.py y pysigma.py: