pip install -e成功,导入失败:ModuleNotFoundError

时间:2018-05-31 00:53:21

标签: python pip openai-gym

我正在尝试安装我正在开发的模块。当我使用' pip install -e。'时,它输出'成功安装健身房 - '但是当我尝试使用' import gym_mabifish'导入模块时我得到了' ModuleNotFoundError:没有名为" gym_mabifish"'。

的模块

这是包的结构:

gym-mabifish/
     setup.py ( https://pastebin.com/1wNykyKw )
     gym_mabifish/
          __init__.py ( https://pastebin.com/GtQid3Nk )
          envs/
               __init__.py ( https://pastebin.com/Txfk0ezE )
               mabifish_env.py ( https://pastebin.com/g50zBbus )

我使用OpenAI健身房的random_agent进行测试。 (https://pastebin.com/72LETtxd

包裹显示在点子列表中:

gym-mabifish (0.0.1, x:\path\to\project\gym-mabifish)

1 个答案:

答案 0 :(得分:0)

最有可能的是,您安装了两个(或更多)Python,pippython来自不同的安装。

理想情况下,您希望解决该问题。但在某些情况下,这非常困难。在Windows上,管理PATH可能是一场噩梦。在macOS上,如果你安装第二个Python 2.7以及Apple预安装的Python 2.7(它没有pip附带),那么事情会让人感到困惑。

所以,现在官方推荐的解决方案只是use the -m flag to run pip using whichever command you normally use to run Python

以下所有内容都是截至2018年初。在过去的几年中它发生了几次变化,未来可能会再次发生变化,所以最好直接进入{{3在文档中,或Installing Python Modules。但作为总结:

理想情况下,您使用的是虚拟环境,在这种情况下,这只是python。但如果没有:

  • Python Packaging User Guide
    • py
  • Windows
    • python,只有当您明确使用OS /发行版附带的任何内容作为默认设置时。
    • python3如果您在* nix上使用3.x(*nix
    • python2.7如果您在macOS上使用Apple的默认Python 2.7。
    • python2如果您在* nix上使用任何其他2.x。

因此,例如,在Windows上,它应该是:

py -m pip install gym-mabifish

...然后当您像这样运行脚本时:

py myscript.py

......它可以import gym_mabifish