开始使用jupyter notebook出现的问题

项目场景:

Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。
下载安装Anaconda的时候,会自动装对应的Python版本的,我安装的版本是
Anaconda版本:4.8.1
Python版本:3.7.1

问题1(打不开jupyter notebook):

首先安装完Anaconda后,你会发现出现这些工具,但是我打不开jupyter notebook,或者说打开后出现一个黑框框就闪退了。

可以选择在Anaconda Prompt命令行中输入jupyter notebook来打开,可以发现报错。
ImportError: cannot import name ‘constants’ from ‘zmq.backend.cython’
翻译:无法从“ zmq.backend.cython”导入名称“ constants”。

解决方案:

重新安装pyzmq

pip uninstall pyzmq
pip install pyzmq

问题2(卸载包报错):

但是我在卸载pyzmq时,又出现了报错:
ERROR: Cannot uninstall ‘pyzmq’. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
翻译:无法卸载“ pyzmq”。 这是一个发行版安装的项目,因此我们无法准确确定属于该项目的文件,而这只会导致部分卸载。

解决方案:

1.不能卸载文件,只能强行升级安装包

pip install --ignore-installed pyzmq

这是网上找到最常用的方法,但是对我来说没用,大家可以先试一下。

2.删除*.egg-info文件
找到pyzmq对应的*.egg-info文件,一般就在usr/lib/python3.7或者其他安装Anaconda3\Lib\site-packages等路径里,最好的办法直接在/目录下全局搜索pyzmq,再找文件后缀为.egg-info的(不要直接搜索pyzmq.egg-info,可能不对,因为文件名后面往往还带着版本号),然后删掉即可,再安装pyzmq就行。
其他的package卸载遇到这种情况方法也通用,搜索package name对应的*.egg-info文件。

问题3(jupyter notebook服务连接出错):

这样之后jupyter notebook可以正常打开了,但是发现代码结果运行不出来,并且行数也不能正常显示。
在这里插入图片描述
可以看到命令行报错:
ERROR:tornado.application:Exception in callback
……
ValueError: signal only works in main thread
在这里插入图片描述

解决方案:

原因是服务没有连接上,是包的版本冲突导致的。
网上找了很多,比较一致的方法是:

pip install "pyzmp==17.0.0" 
pip install "ipykernel==4.8.2"

意思是重新安装两个匹配的pyzmp和ipykernel,可以先试一下。
但是我试了,又报了其他的错误,而且给很不好解决。

换个解决思路,我觉得我这里出错的原因是前面重新安装了pyzmp,应该是最新版本的,因此和原来的ipykernel产生不匹配的问题,所以我只需要重新安装ipykernel是不是就好了(参照问题2),实践之后成功了!!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值