建筑Cython代码
与Python不同,Cython代码必须编译。这分两个阶段进行:
要全面了解Cython+setuptools构建过程,人们可能想了解更多分发Python模块.
有几种方法可以构建Cython代码:
编写setuptools设置.py
。这是正常和推荐的方式。
运行赛马
命令行实用程序。这是一个很好的方法将单个Cython源文件直接编译为扩展名。可以“就地”构建源文件(以便创建扩展模块源文件旁边,准备导入)赛马 -我 文件名.pyx
.
使用皮克西姆波特,导入Cython.pyx格式
文件,就好像它们是.py格式
文件(使用setuptools在后台编译和构建)。此方法比编写设置.py
,但不是很灵活。所以你需要写一个设置.py
例如,如果您需要某些编译选项。
运行赛马
命令行实用程序手动生成.c类
文件来自.pyx格式
文件,然后手动编译.c类
文件到共享适合从Python导入的对象库或DLL。(这些手动步骤主要用于调试和实验。)
使用[朱庇特]笔记本或[贤人]笔记本,这两者都允许内联Cython代码。这是开始编写Cython代码并运行它的最简单方法。
目前,使用setuptools是构建和分发Cython文件的最常见方式。其他方法在源文件和编译参考手册的第节。
使用Jupyter笔记本
Cython可以从web浏览器中方便地交互使用通过Jupyter笔记本。要将Jupyter笔记本安装到virtualenv中,使用pip:
(供应商)$ pip(点阵) 安装 木星(静脉)$ 木星 笔记本
要支持Cython编译,请按照安装指南并加载赛马拉松
Jupyter笔记本中的扩展:
然后,在单元格前面加上%%赛马
标记编译它
%%赛马
一: 赛马.整数 = 0
对于 我 在里面 范围(10):
一 += 我
打印(一)
%%赛马
cdef公司 整数 一 = 0
对于 我 在里面 范围(10):
一 += 我
打印(一)
您可以通过传递--注释
选项:
有关%%赛马
魔法,看使用Jupyter笔记本进行编译.
使用Sage笔记本