27

从命令行运行时

$ cython -a mycode.pyx

你会得到一个非常漂亮的带有黄色阴影的 HTML“注释”文件,以指示慢速 python 操作与快速 C 操作。每次在 Sage 中编译 Cython 代码时,您也会获得相同的 HTML 文件作为链接。我的问题是:(1)如果我使用 distutils 编译,我可以获得这个 HTML 文件吗?(2) 如果我使用 pyximport 编译,我可以得到这个 HTML 文件吗?谢谢!!

4

1 回答 1

35

感谢 larsmans 的评论和Cython 电子邮件列表,我现在有许多令人满意的选项可以在不离开 IPython 的情况下生成“注释”HTML 文件:

(1) 使用子进程...

import subprocess
subprocess.call(["cython","-a","myfilename.pyx"])

(2)自己在Cython中开启全局注释标志,编译前:

import Cython.Compiler.Options
Cython.Compiler.Options.annotate = True

(3)annotate=True传入cythonize()[使用distutils编译方法时]。

似乎 pyximport 没有自己的直接选项来打开注释。

于 2012-06-17T22:48:42.310 回答