jupyter无法导入已经下载的包,jupyter和终端所用解释器不同

文章讲述了在使用Jupyter时遇到导入geopandas包失败的问题,原因是Jupyter和终端的Python解释器路径不一致。解决方案包括检查和确保环境的一致性,或者通过创建新的kernel来绑定正确的Python环境。通过安装ipykernel并创建自定义kernel,成功解决了geopandas的导入问题。
摘要由CSDN通过智能技术生成

问题

最近刚开始用Jupyter,在安装geopandas后,发现无法导入,但安装列表里已有此包。

import时报错:

一开始我用的是

!pip list

来查看安装列表,列表里显示有包。

后面又用命令 pip list 来查看,发现又没有这个包了,这两个命令查看的位置是不同的,查资料后发现:

在Jupyter Notebook中,以感叹号!开头的命令将在系统的命令行终端中执行,而不是在Python解释器中执行。因此,!pip list将会在终端中执行pip list命令,而pip list将会在Python解释器中执行。

解决方法

  1. 确认jupyter与终端分别使用的Python解释器路径是否一致

先在Jupyter中输入:

import sys
sys.executable

查看Jupyter的解释器路径

再在终端(激活和Jupyter一样的环境)中输入python , 然后import sys,最后执行sys.executable,查看终端的解释器路径。

没解决成功之前我的两个路径是不一致的,这时有两个解决办法

2.1 安装一个内核切换管理包

JupyterNotebook设置Python环境 | 来呀,快活呀~ (xmfbit.github.io)

(8条消息) 记录贴:关于jupyter-notebook无法同步虚拟环境包的问题_scnu_yanghaizhen的博客-CSDN博客_jupyter notebook不能同步虚拟环境

详细教程如上↑

但是我当时没安装成功,于是又有第二种处理方式

2.2 在jupyter notebook中创建一个新的kernel

  1. 在终端中进入Python的虚拟环境或安装好geopandas的环境(执行下面步骤前,一定确认该环境中已经安geopandas了,否则现安一个,pip install geopandas),其实在使用这个方法的时候,我就发现我的虚拟环境中没有ipykernel这个包,可能就是因为这个原因才导致解释器地址不一致吧?

所以首先需要运行以下命令安装ipykernel包:

pip install ipykernel

(注意:这个时候不要科学上网,当时就因为网络问题,一直下载不下来,又浪费了很多功夫)

  1. 激活环境后,在终端中运行以下命令来创建新的kernel,将kernel命名为你需要的名字(例如,my_env):

python -m ipykernel install --user--name=my_env

这个命令会在jupyter notebook中创建一个新的kernel,并将它命名为my_env。

  1. 在jupyter notebook中打开一个notebook,在notebook的菜单中选择Kernel -> Change Kernel -> my_env,将这个notebook绑定到新创建的kernel上。

  1. 在notebook中输入以下代码,确认jupyter notebook已经切换到了正确的环境:

import sys
sys.executable

运行代码后,输出的路径应该是你在终端中激活的Python环境的路径,这样就可以在jupyter notebook中使用正确的Python解释器了。

ok,这时import geopandas就没问题了

  • 13
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值