完美解决jupyter由于无法import新包的问题
作者:乾坤瞬间 发布时间:2021-09-19 01:21:11
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=环境名即可
来源:https://blog.csdn.net/u012491646/article/details/79688979


猜你喜欢
- 题目大意问 太阳神有一牛群,由白、黑、花、棕四种颜色的公、母牛组成,其间关系如下,求每种牛的个数。公牛中,白牛多于棕牛,二者之差为
- 前言Hi! 这是随笔专栏的第一篇文章。好的开始等于成功了一半。在之后的日子里,除了不定期分享实战中可总结出的小项目外,还会经常与大分享开发时
- 一、现象凌晨对线上一张表添加索引,表数据量太大(1亿+数据,数据量50G以上),造成主从延迟几个小时,各个依赖从库的系统无法查询数据,最终影
- 在使用Go语言进行开发的时候,有的时候可能要发送get或者post请求,下面我对post和get请求做一下简单的介绍:关于 HTTP 协议H
- 要求编写登录接口: 1. 输入用户名和密码2.认证成功后显示欢迎信息3.用户名输错,提示用户不存在,重新输入(5次错误,提示尝试次数过多,退
- 前言:Python可以引入指定路径的文件,原理就是使用sys.path.append加入到程序查找的路径。实验目的:调用不同目录的类和接口,
- 目的:是学习python 多线程的工作原理,及通过抓取400张图片这种IO密集型应用来查看多线程效率对比import requestsimp
- 支持两种用法:(1)合并某一文件夹下的所有文件(忽略文件夹等非文件条目)(2)显示的合并多文件。import sysimport os
- 2008北京奥运会块到了,下面的js代码将告诉你,离奥运会开幕还要多少天!让我们一起迎接这美好的时刻。相关文章推荐:各种北京2008奥运会倒
- 1、开始->运行,输入SERVICES.MSC到服务里,停止所有Oracle服务; 2、开始->程序->Oracle - OraHome81
- 本文实例讲述了Python实现的重启关机程序的方法,对Python程序设计有一定的参考价值。具体方法如下:实例代码如下:#!/usr/bin
- 为了查找这些存储过程,你可以花时间在互联网搜索,查看一些你还未知道的存储过程,也许在一两个小时您可能会发现你想要...也许你很幸运的找到,其
- 有时候我们会有这样的一个需求:我们定义了一个 Python 的方法,方法接收一些参数,但是调用的时候想将这些参数用命令行暴露出来。比如说这里
- 在开发的过程中,我们不可避免的会遇到各种各样的编码,解码,或者乱码问题,很多时候,我们可以正常的解决问题,但是说实在的,我们有可能并不清楚问
- 写在前面关于 ES6, 也终于在 2015 年的 7 月 18 号尘埃落定了。虽然说各大浏览器还没有全面的支持,不过这并不妨碍我们一颗想要撸
- Celery是一个异步的任务队列(也叫做分布式任务队列),一个简单,灵活,可靠的分布式系统,用于处理大量消息,同时为操作提供维护此类系统所需
- ALTER TABLE将表更改为当前字符集。如果在执行ALTER TABLE操作期间遇到重复键错误,原因在于新的字符集将2个键映射到了相同值
- 将el-switch值true、false改为number类型的1和0需求描述后端传回的status值为1(number类型)对应el-sw
- 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于
- 缩略图在很多时候我们都需要将图片按照同比例缩小有利于存储 但是一张张手动去改的话太麻烦了 今天我们就用python实现一个简单的将一个文件夹