gpt4 book ai didi

python - 在涉及 Cython 的 setup.py 中,如果 install_requires,那么如何从库中导入一些东西?

转载 作者:太空狗 更新时间:2023-10-29 21:45:19 26 4
gpt4 key购买 nike

这对我来说没有意义。如何使用 setup.py 安装 Cython,然后还使用 setup.py 编译库代理?

import sys, imp, os, glob
from setuptools import setup
from Cython.Build import cythonize # this isn't installed yet

setup(
name='mylib',
version='1.0',
package_dir={'mylib': 'mylib', 'mylib.tests': 'tests'},
packages=['mylib', 'mylib.tests'],
ext_modules = cythonize("mylib_proxy.pyx"), #how can we call cythonize here?
install_requires=['cython'],
test_suite='tests',
)

后来:python setup.py 构建

Traceback (most recent call last):
File "setup.py", line 3, in <module>
from Cython.Build import cythonize
ImportError: No module named Cython.Build

这是因为还没有安装cython。

奇怪的是很多项目都是这样写的。快速的 github 搜索揭示了同样多的内容:https://github.com/search?utf8=%E2%9C%93&q=install_requires+cython&type=Code

最佳答案

据我了解,这里是PEP 518进来 - 另见 some clarifications作者之一。

这个想法是您向 Python 项目/包中添加另一个文件:pyproject.toml。它应该包含有关构建环境依赖性的信息(除其他外,长期)。 pip(或任何其他包管理器)可以查看此文件并在运行 setup.py(或任何其他构建脚本)之前安装所需的构建环境。因此,pyproject.toml 可能如下所示:

[build-system]
requires = ["setuptools", "wheel", "Cython"]

这是一个相当新的发展,截至目前(2019 年 1 月),它还没有被 Python 社区最终确定/批准,尽管(有限)support was added to pip 2017 年 5 月/10.0 版。

关于python - 在涉及 Cython 的 setup.py 中,如果 install_requires,那么如何从库中导入一些东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44554882/

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