OS X系统下iPython无法识别已安装Python包的问题求助
解决IPython无法识别Python3.6已安装包的问题
嘿,我之前在OS X上也碰到过一模一样的困扰!其实核心问题就是IPython关联的Python版本和你用pip装包的版本不匹配——毕竟OS X自带了Python2,很容易出现版本混淆的情况,下面给你几个靠谱的解决办法:
第一步:确认版本不匹配的问题
先打开IPython,输入以下代码查看它正在使用的Python路径:
import sys print(sys.executable)
再在终端里运行这个命令,查看你装包用的Python3.6路径:
which python3.6
如果两个路径不一样,那就是版本不匹配导致的包无法识别,接下来就可以用下面的方法修复啦。
方法一:用Python3.6直接安装IPython
这是最直接的办法,让IPython和你装包的Python环境绑定:
python3.6 -m pip install ipython
安装完成后,直接在终端输入ipython(或者ipython3)启动,这时候它就会用Python3.6的环境,之前装的matplotlib这些包就能正常导入了。
方法二:卸载并重新匹配版本的IPython
如果已经装过IPython,先把旧版本卸载:
pip uninstall ipython -y
然后再用Python3.6的pip重装,步骤和方法一一样,这样就能确保IPython和你的包在同一个环境里。
方法三:用虚拟环境彻底隔离版本(推荐长期使用)
为了避免以后再出现版本混乱的问题,强烈建议用虚拟环境来管理你的Python项目:
- 创建一个Python3.6的虚拟环境:
python3.6 -m venv my_py36_env
- 激活虚拟环境:
source my_py36_env/bin/activate
- 在激活的环境里安装IPython和需要的包:
pip install ipython matplotlib
这样启动的IPython肯定能识别所有在这个环境里装的包,完全不会有版本冲突的问题。
内容的提问来源于stack exchange,提问作者aburger
相关产品推荐
相关产品推荐

