Cython 入门:helloworld

来源:互联网 发布:网易域名邮箱注册 编辑:程序博客网 时间:2024/06/05 20:13

安装

一个伟人说过:

把大象放到冰箱里的第一步,打开冰箱;

所以写cython的第一步,安装cython。
这里我们直接在命令行中输入pip install cython,然后没有错误提示,那么久安装好了。

hello world

新建一个pyx文件命名为helloworld.pyx,加入语句:

print ("hello world")

现在有两种方式,最简单的,在helloworld.pyx目录中启动python程序,输入

方式1 pyximport

import pyximport;pyximport.install()import helloworld

在python模块没有引用c代码的时候,pyximport会自动编译.py.pyx文件。自动编译流程时在用户目录下为我用户自动编译了pyx文件。
这里写图片描述

如果还会自动编译大部分python标准库,如果使用下面语句。

pyximport.install(pyimport = True)

下图自动编译了timeit模块。

这里写图片描述

方式2: setup.py

第2中方式是编写setup.py并运行它;

from distutils.core import setupfrom Cython.Build import cythonizesetup(    ext_modules = cythonize("helloworld.pyx"))

setup.pyhelloworld.pyx放在一个文件家里,并运行python setup.py build_ext --inplace。如图所以的编译过程
这里写图片描述

最后我们获得了helloworld.pyd(windows平台),如果是linux会获得一个helloworld.so。

然后在同一目录下打开命令行运行python,输入import helloworld,你将得到整个世界。

总结

对于大型的模块,还是需要使用distutils编写setup.py文件。pyximport适用于平时自己写代码试验用。