亲宝软件园·资讯

展开

完美解决jupyter由于无法import新包的问题

乾坤瞬间 人气:0

jupyter因为其在python框架下具有一个较为人性化的设计,从而在数据分析,python教学,以及python的快速学习中大放光彩.

jupyter作为一个类似于spyder的一种编译器,其美观实用,而且还易于写博客吸引我.

但是由于在jupyter模式下写代码的时候,会发现通过pip install package命令行安装package完成之后,无法在jupyter模式下

import package,这点一直很困惑,进过百般google,还是找不到原因,或者说大家好像根本觉得这个不是事,因此,我在这里先

写个备忘,以免以后忘了

jupyter模式下实用的python编译路径与其他模式下的python编译路径是不一样的

在 jupyter 模式下,使用sys包的自省模式,找到自己的编译路径....(找了半天,发现有这个东西)

[1] import sys

[2] sys.path

['',
'/home/zhangll/anaconda3/envs/ipykernel_py3/lib/python36.zip',
'/home/zhangll/anaconda3/envs/ipykernel_py3/lib/python3.6',
'/home/zhangll/anaconda3/envs/ipykernel_py3/lib/python3.6/lib-dynload',
'/home/zhangll/anaconda3/envs/ipykernel_py3/lib/python3.6/site-packages',
'/home/zhangll/anaconda3/envs/ipykernel_py3/lib/python3.6/site-packages/IPython/extensions',
'/home/zhangll/.ipython']

输出结果可以发现,jupyter模式下python的编译器路径与Python其他编译器路径完全不一样.

jupyter编译默认路径是在 anaconda3/enves目录下,

但是原生python默认的路径在

['',
'/home/zhangll/anaconda3/lib/python36.zip',
'/home/zhangll/anaconda3/lib/python3.6',
'/home/zhangll/anaconda3/lib/python3.6/lib-dynload',
'/home/zhangll/anaconda3/lib/python3.6/site-packages',
'/home/zhangll/anaconda3/lib/python3.6/site-packages/Sphinx-1.5.6-py3.6.egg',
'/home/zhangll/anaconda3/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg']

所以,在通过termial/shell模式下安装的是在python默认路径,因此需要通过命令模式

$ cd /home/zhangll/anaconda3/envs/ipykernel_py3/bin
$ ./pip install package

这样才能在jupyter下正常使用

当然可以修改shell的命令路径的配置来修改pip命令

这个按揭不表

补充知识:将jupyter 放进你的新环境中

在新环境下pip install jupyter之后,输入

python -m ipykernel install --user --name=环境名即可

以上这篇完美解决jupyter由于无法import新包的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

加载全部内容

相关教程
猜你喜欢
用户评论