Cómo compilar extensiones usando Cython
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 p >
Luego probamos el rendimiento:
csigma.py y pysigma.py:
csigma.py y pysigma.py:
csigma. y pysigma.py:
csigma.py y pysigma.py: