pip安装后出现ModuleNotFoundError。(自定义模块)

2024-06-17 16:05:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在启动一个名为nate givens toolkit的定制包

我想在另一个文件夹中的Jupyter笔记本中使用该软件包中的模块

这是我的结构

- nate-givens-toolkit/
  - setup.py
  - nate_givens_toolkit/
    - cloud_io.py
    - __init__.py
- project/
  - project_nb.ipynb

我将进入nate_givens_toolkit(在控制台中)并运行:pip3 install .

我得到的输出看起来一切都很好

Processing /home/ec2-user/nate-givens-toolkit
Building wheels for collected packages: nate-givens-tooklit
  Building wheel for nate-givens-tooklit (setup.py) ... done
  Created wheel for nate-givens-tooklit: filename=nate_givens_tooklit-0.1-py3-none-any.whl size=2009 sha256=7de8c9d2930d531603c973c7d8079b66f3d4326fb274e63087128fb7d25d9e1b
  Stored in directory: /home/ec2-user/.cache/pip/wheels/17/96/2f/0073c92cfdadbb032d855f24df4725bf190d39cd1c5bb1d233
Successfully built nate-givens-tooklit
Installing collected packages: nate-givens-tooklit
  Attempting uninstall: nate-givens-tooklit
    Found existing installation: nate-givens-tooklit 0.1
    Uninstalling nate-givens-tooklit-0.1:
      Successfully uninstalled nate-givens-tooklit-0.1
Successfully installed nate-givens-tooklit-0.1

但如果我进入project_nb.ipynb并写下:

from nate_givens_toolkit import cloud_io as cloud

我得到:ModuleNotFoundError:没有名为“nate\u givens\u toolkit”的模块

如果从控制台运行python,也会发生同样的情况。只要我在nate givens工具箱目录中,我就可以导入并运行它。但是如果我向上导航一个级别并尝试导入,我会得到ModuleNotFoundError

我不明白为什么pip安装似乎可以工作,但我仍然得到这个ModuleNotFoundError。我认为pip安装的全部意义在于,我可以从其他目录中的文件导入,而不必担心相对路径之类的问题。(我在完全不同的工作环境中做了同样的事情,一切都很好。)

我尝试过类似问题的解决方案,如:

到目前为止,还没有找到任何有效的方法

我所做的一切都在同一条康达静脉内

帮忙


Tags: 模块pippyioprojectcloudforsetup
1条回答
网友
1楼 · 发布于 2024-06-17 16:05:18

我在这里找到了我问题的答案:Import py file in another directory in Jupyter notebook。(注意:这不是那篇帖子上公认的答案,而是公认答案之后的第二个答案。)

诀窍在于,在使用pip安装时,我需要使用-e标志

所以不是

pip install .

我不得不跑

pip install -e .

一旦我运行了它,它就可以在控制台和Jupyter中使用Python

相关问题 更多 >