gpt4 book ai didi

python - 我应该将我的 cython 文件放在 python 发行版中的什么位置?

转载 作者:太空宇宙 更新时间:2023-11-03 11:31:59 24 4
gpt4 key购买 nike

我编写并维护了一个用于量子化学计算的 Python 库,名为 PyQuante .我有一个相当标准的 Python 发行版,主目录中有一个 setup.py 文件,一个名为“PyQuante”的子目录包含所有 Python 模块,一个名为“Src”的子目录包含 C 扩展模块的源代码。

我很幸运有一些用户捐赠了使用 Cython 的代码,这是我以前从未使用过的,因为我在 PyQuante 或 Pyrex 存在之前就开始了。根据我的建议,他们将代码放入 Src 子目录,因为那是所有 C 代码所在的位置。

但是,查看生成扩展的代码,我想知道我是否应该简单地将代码放在 Python 分支的子目录中。因此我的问题是:

具有 Python 和 Cython 源文件的 python 发行版目录结构的最佳实践是什么?

  • 您是否将 .pyx 文件与 .py 文件放在同一目录中?
  • 您是否将它们放在包含 .py 文件的子目录中?
  • 您是否将它们放在 .py 目录父目录的子目录中?

我问这个问题是否暴露了我对分发 .pyx 文件的无知?我确信有很多方法可以使这项工作发挥作用,并且我最关心的是对人们最有效的方法。

感谢您提供的任何帮助。

最佳答案

将 .pyx 文件放在与 .py 文件相同的目录中对我来说最有意义。这就是 scikit-learn 的作者在我的 py-earth 中做了什么以及我做了什么模块。我想我认为 Cython 模块是 Python 模块的优化替代品。我通常会先用纯 Python 编写一个包,然后如果我需要更好的性能,用 Cython 替换一些模块。由于我将 Cython 模块视为 Python 模块的替代品,因此将它们放在同一个位置对我来说很有意义。它也适用于使用 --inplace 参数的测试构建。

关于python - 我应该将我的 cython 文件放在 python 发行版中的什么位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16887891/

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