【发布时间】:2011-10-30 01:55:49
【问题描述】:
我有巨大的 Python 模块(+8000 行)。它们基本上有大量的函数,用于通过串行端口通过读取和写入硬件寄存器与硬件平台进行交互。
它们不是数值算法。所以应用程序只是读/写硬件寄存器/内存。我使用这些库来编写自定义脚本。最终,我需要将所有这些东西移动到我的硬件上的嵌入式处理器中运行以获得更好的控制,然后我只需从 PC 启动事件,其余的都在硬件中。
所以我需要将它们转换为 C。如果我可以通过自动工具将我的脚本转换为 C,那将为我节省大量时间。这就是我被 Cython 吸引的原因。效率并不重要,我的代码不是数字处理器。但是生成的代码应该相对较小,以适应我有限的内存(几百千字节)。
我可以使用 Cython 作为我的自定义 Python 脚本到 C 的转换器吗?我的猜测是肯定的,在这种情况下我可以使用这些 .c 文件在我的硬件中运行吗?我的猜测不是因为我的硬件中也必须有 Cython 才能运行。但是如果只是创建一些 .c 文件,我可以通过并使其独立,因为代码没有使用 Python 的大部分功能,它只是将其用作快速实现脚本。
【问题讨论】:
-
有没有人真正做到这一点?我觉得这很难调试。我真的很想自己用 Cython/PyPy 来做这件事,但这看起来测试起来可能很有趣......