gpt4 book ai didi

python - 使用 cython 将模块移植到 python 3.1

转载 作者:太空狗 更新时间:2023-10-30 00:15:32 25 4
gpt4 key购买 nike

是否可以在 cython 中导入任意模块,将它们编译为共享对象文件,然后在 python 3.1 中使用它们?

这样做的原因是,我正在为程序“blender”编写一个扩展,它有一个内部 python 3.1 解释器。但我也想使用一些尚未移植到 3.x 的 python 模块

我脑子里特别想的是 numpy(还有其他一些库)。我有一个模块,它使用了 numpy。因为我想重新分发该模块,所以我不希望人们在他们的机器上安装 numpy。那行得通吗?

最佳答案

原则上,我相信这是可能的。 Cython 的工作原理是将类似 Python 的代码转换为 C 代码。该代码可以针对 Python 2 或 Python 3 进行编译(它使用 C 预处理器语句来更改使用的代码)。

坏消息是它只适用于用 Cython 可以翻译的类 Python 代码编写的扩展。您不能在用 C 编写的扩展上使用 Cython,例如 Numpy。

好消息是,至少对于 Numpy,您不必这样做。自 version 1.5 ,Numpy 支持 Python 3。有一个适用于 Windows 的二进制文件;在其他系统上,您可能必须自己弄清楚如何编译代码。

关于python - 使用 cython 将模块移植到 python 3.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4297167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com