【问题标题】:Automatically converting .py file to .pyx using python type hints使用 python 类型提示自动将 .py 文件转换为 .pyx
【发布时间】:2023-01-29 19:05:32
【问题描述】:

最近我不得不将一个用纯 python 编写的模块转换为 pyx,以便用 cython 进行编译。 从 py 到 pyx 的转换过程非常简单,因为所有的变量和函数都有类型提示。所以这只是在 python 中查找每种类型的 cython 静态类型的问题。

当前有哪些选项可用于自动将纯 Python 编写的模块转换为 Cython,特别是用于将 .py 文件转换为 .pyx 文件,同时考虑到原始代码中 Python 类型提示的使用?是否有任何现有模块或工具可以促进此过程?如果不是,理论上是否有可能开发一个可以自动将 Python 类型提示转换为 Cython 静态类型的模块,如果可以,那么在开发这样的模块时可能会遇到哪些挑战?

【问题讨论】:

标签: python cython static-typing cythonize dynamic-typing


【解决方案1】:

Cython已经使用Python type annotations 所以你很可能不需要做任何事情。

有几个小注意事项:

  • 最新的 Cython 3 alpha 版本比 0.29.x 分支对此有更好的支持(如果可以的话请升级),
  • int 被假定为 Python 对象而不是 C int,以避免大 int 溢出并保持与 Python 相同的语义。使用 cython.int 作为 C int 的注释。

【讨论】:

    猜你喜欢
    • 2019-12-13
    • 2017-08-17
    • 2021-11-03
    • 2017-05-22
    • 2022-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    相关资源
    最近更新 更多