3.如何构建Cython代码

一、与Python不同的是,Cython代码需要进行编译。发生两个阶段

  1. 将一个.pyx文件用Cython编译成一个.c文件中,包括Python扩展模块代码
  2. 将.c文件使用C编译器编译成.so文件(在windows上是.pyd文件),这个文件可以在Python中直接import使用

二、构建Cython代码的方法

  1. 写一个distutils/setuptools setup.py(推荐)
  2. 像使用.py文件一样。使用Pyximport,导入Cython .pyx文件(使用distutils在后台编译和构建)。
  3. 运行 cython 命令行工具通过.pyx文件生成.c文件,然后手动将.c文件编译为适合python导入的共享库或dll
  4. 使用Jupyter或Sage,这两个都可以内联Cython代码。

三、使用distutils构建Cython模块

首先编写python脚本(hello.pyx)

def sayHi(name):
    print('Hi,%s!'%name)

然后编写setup.py脚本

from distutils.core import setup
from Cython.Build import cythonize

setup(name='Hello world app',
      ext_modules=cythonize('hello.pyx'))

最后在所在目录中运行命令

python setup.py build_ext --inplace

接下来的使用就和python库一样

猜你喜欢

转载自www.cnblogs.com/walthwang/p/10423680.html
3.