在 setup.py 中尝试导入第三方模块时出现 ModuleNotFoundError

Getting ModuleNotFoundError when trying to import third party modules in setup.py

我目前正在编写一个模块,我想为它使用 mypyc。我正在按照文档在 setup.py 中使用它,但每次我尝试将它导入那里时我都会得到一个 ModuleNotFoundError 和 运行 pip install ..
当 运行ning python setup.py install 一切正常时。
当我也尝试导入其他模块时出现错误。当然都安装好了。
我不知道问题出在哪里。

这是我的 setup.py 文件:

from mypyc.build import mypycify
from setuptools import find_packages, setup

setup(
    name="my_lib_name",
    author="my_name",
    url="my_url",
    license="MIT",
    description="Some description",
    packages=find_packages(),
    version="0.0.1",
    install_requires=["levenshtein", "unidecode", "mypy"],
    ext_modules=mypycify(["mylib/"]),  # type: ignore
    python_requires=">=3.9",
    setup_requires=["pytest-runner"],
    tests_require=["pytest"],
    test_suite="tests",
)

我在 运行ning pip install .:

时得到的错误
    File "setup.py", line 1, in <module>
      from mypyc.build import mypycify
  ModuleNotFoundError: No module named 'mypyc'
  ----------------------------------------
ERROR: Command errored out with exit status 1: 'c:\users\my_path\venv\scripts\python.exe' 'c:\users\my_path\venv\lib\site-packages\pip\_vendor\pep517\_in_process.py' get_requires_for_build_wheel 'C:\Users\my_name\AppData\Local\Temp\tmpa7qmg4q1' Check the logs for full command output.

同样,当 运行ning python setup.py install 我没有收到任何错误。
当然,当我删除 mypyc 导入时,一切也都按预期工作。
不确定我在这里做错了什么,希望有人能帮助我。

为了补全,我使用的是Python版本3.9.2和pip版本20.2.3,但是使用最新的pip版本22.0.4也出现这个错误。

经过 很多 的反复试验,我找到了罪魁祸首。我的项目中有一个 pyproject.toml 文件,它似乎出于某种原因导致了这个问题??我不确定为什么,它出于某种原因干扰了它。

这是 pyproject.toml 文件的内容:

[tool.black]
line_length=88

[tool.isort]
profile="black"

我在顶部添加了这些行:

[build-system]
requires = ["setuptools", "setuptools-scm", "mypy"]
build-backend = "setuptools.build_meta"

“mypy”是我要在 setup.py 文件中导入的包。

完全删除文件也可以。

我希望这可能会对某人有所帮助。