gpt4 book ai didi

python - 带有 pipenv 的 Jupyter 中的 ModuleNotFoundError

转载 作者:太空宇宙 更新时间:2023-11-04 04:30:47 25 4
gpt4 key购买 nike

这个周末我参加了 Python 新手训练营,但由于这个问题,我什至无法在我的计算机上使用 Python。我所有的导师也都被难住了。

问题是我在 Jupyter 上得到了 ModuleNotFoundError 和多个不同的包,包括 Pandas 和 Requests(但奇怪的是,BeautifulSoupCSV 工作正常。)

以下是我如何开始一个新的 Jupyter 文件:

  • 创建一个新目录
  • 使用以下命令安装 jupyter 和 pandas:pipenv install jupyter pandas
  • 激活虚拟环境:pipenv shell
  • 启动 Jupyter:jupyter notebook
  • 创建新的 Python 3 笔记本
  • 此时,我尝试了一个类似import pandas as pd 的命令并返回了ModuleNotFoundError

我使用的是 Python 3.6.5 版。

修复失败的尝试:

  • 使用 pip graph 仔细检查我的虚拟环境中是否安装了 pandas
  • 创建了全新的目录pipenv 安装 jupyter pandas --skip-lock

  • 使用这些命令卸载了系统范围内的所有内容:

pip freeze > requirements.txt
pip uninstall -r requirements.txt -y
  • 更新 Pandas
  • 使用 virtualenv 代替 pipenv
virtualenv first-python-notebook
cd first-python-notebook
cd Scripts
activate
cd ..
pip install jupyter pandas

我测试过当我在命令 shell 中使用 python 时可以导入 pandas(是的)——在 Jupyter 上仍然不起作用。

我的导师认为问题是系统范围的包干扰了虚拟包,但我们已经工作了几个小时,无法弄清楚如何解决这个问题。

如有任何帮助,我们将不胜感激。由于我是初学者,请附上详细说明。

最佳答案

如果您在 jupyter 中收到“ModuleNotFoundError: No module named xxyyzz”,但可以通过 pipenv shell 运行 python 来导入该模块(pipenv run python -c "import xxyyzz; print(xxyyzz.__version__)":

  • 可能是 jupyter 的 python 路径在内核配置文件中设置不正确:..\jupyter\kernels\<myProjectName>\kernel.json
  • 需要在 pipenv shell 中创建内核以选择正确的路径

使用全新的 pipenv 安装:

  1. pip install pipenv
  2. cd <project directory>
  3. export PIPENV_VENV_IN_PROJECT=1 # creates .venv in project directory
  4. pipenv --python=/path/to/python --site-packages # use python executable for your system or environment
  5. pipenv shell # work in project's virtual environment
  6. python -m ipykernel install --user --name=<myProjectName> # create jupyter kernel for project
  7. exit # exit project's virtual environment
  8. pipenv run jupyter notebook # start jupyter from project directory
  9. 在 jupyter 中,选择内核“myProjectName”

this post provides additional explanations

关于python - 带有 pipenv 的 Jupyter 中的 ModuleNotFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52681365/

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