我一直在网上四处寻找,试图找到一个很好的分步指南来在 Windows 中扩展 Python,但我找不到适合我技能水平的东西。
假设您有一些如下所示的 C 代码:
#include <stdio.h>
#include <math.h>
double valuex(float value, double rate, double timex)
{
float value;
double rate, timex;
return value / (double) pow ((1 + rate), (timex));
}
并且您想将其转换为 Python 3 模块,以便在 Windows(64 位,如果有区别的话)系统上使用。你会怎么做?我查看了 SWIG 和 Pyrex,在这两种情况下,它们似乎都适合 unix 用户。对于 Pyrex,我不确定它是否适用于 Python 3。
我只是想通过一些实际示例来学习编程的基础知识。
最后,如果有人可以推荐一本学习扩展的好书,我将不胜感激。
谢谢。
最佳答案
Cython(Pyrex 解决了一些问题并为实用性做出了决定)可以使用一个代码库来制作 Python 2 和 Python 3 模块。这是为 2 和 3 创建库的绝佳选择。user guide解释了如何使用它,但它并没有揭开 Windows 编程或 C 或 Python 或一般编程的神秘面纱,认为它可以为您简化一些事情。
当您遇到问题时,SWIG 可能很难使用,并且不会特别有助于创建您所依赖的 C 的非常原生的、惯用的绑定(bind)。为此,您需要用 Python 重新包装包装器,此时使用 Cython 可能会更好。它可以很好地用于绑定(bind),您无法投入足够的工作来使其变得真正好,并且很方便,因为您可以在其中同时将 API 公开给多种语言。
关于python - 如何为绝对初学者制作适用于 Windows 的 Python 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2503310/