解决Jupyter因卸载重装导致的问题修复
作者:堡垒-93 时间:2023-09-30 18:22:31
因为一些原因,卸载了Anaconda2的版本,转向3..发现Jupyter挂了.百思不得其解.后来了解到是因为内核找不到的问题导致的.这里整理了一下处理办法
错误内容:
Traceback (most recent call last):
File "c:\program files\python36\lib\site-packages\tornado\web.py", line 1543, in _execute
result = yield result
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1099, in run
value = future.result()
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1107, in run
yielded = self.gen.throw(*exc_info)
File "c:\program files\python36\lib\site-packages\notebook\services\sessions\handlers.py", line 73, in post
type=mtype))
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1099, in run
value = future.result()
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1107, in run
yielded = self.gen.throw(*exc_info)
File "c:\program files\python36\lib\site-packages\notebook\services\sessions\sessionmanager.py", line 79, in create_session
kernel_id = yield self.start_kernel_for_session(session_id, path, name, type, kernel_name)
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1099, in run
value = future.result()
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1107, in run
yielded = self.gen.throw(*exc_info)
File "c:\program files\python36\lib\site-packages\notebook\services\sessions\sessionmanager.py", line 92, in start_kernel_for_session
self.kernel_manager.start_kernel(path=kernel_path, kernel_name=kernel_name)
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 1099, in run
value = future.result()
File "c:\program files\python36\lib\site-packages\tornado\gen.py", line 315, in wrapper
yielded = next(result)
File "c:\program files\python36\lib\site-packages\notebook\services\kernels\kernelmanager.py", line 148, in start_kernel
super(MappingKernelManager, self).start_kernel(**kwargs)
File "c:\program files\python36\lib\site-packages\jupyter_client\multikernelmanager.py", line 110, in start_kernel
km.start_kernel(**kwargs)
File "c:\program files\python36\lib\site-packages\jupyter_client\manager.py", line 259, in start_kernel
**kw)
File "c:\program files\python36\lib\site-packages\jupyter_client\manager.py", line 204, in _launch_kernel
return launch_kernel(kernel_cmd, **kw)
File "c:\program files\python36\lib\site-packages\jupyter_client\launcher.py", line 128, in launch_kernel
proc = Popen(cmd, **kwargs)
File "c:\program files\python36\lib\subprocess.py", line 709, in __init__
restore_signals, start_new_session)
File "c:\program files\python36\lib\subprocess.py", line 997, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
解决办法
首先使用jupyter kernelspec list查看安装的内核和位置
2.进入安装内核目录打开kernel.jason文件,查看Python编译器的路径是否正确(其实笔者的问题就是因为路径不正确导致的),修改错误的这个配置.
3.重启jupyter notebook即可
网络上一些其他解决办法
1.首先使用jupyter kernelspec list查看安装的内核和位置
2.进入安装内核目录打开kernel.jason文件,查看Python编译器的路径是否正确
如果不正确python -m ipykernel install --user重新安装内核,如果有多个内核,如果你使用conda create -n python2 python=2,为Python2.7设置conda变量,那么在anacoda下使用activate pyhton2切换python环境,重新使用python -m ipykernel install --user安装内核
3.重启jupyter notebook即可
补充知识:关于jupyter内核(kernel)错误处理方法
首先明确起因:
卸载重装,或者之前有装过ipython,导致再次安装后,内核匹配的路径错误,没有指向新安装的位置。理论上有两种处理方法:
方法一:
手动修改路径:
1.首先使用jupyter kernelspec list查看安装的内核和位置
2.进入安装内核目录打开kernel.jason文件,查看Python编译器的路径 是否正确(其实笔者的问题就是因为路径不正确导致的),修改错误的这个配置.
3.重启jupyter notebook即可
注:理论上没有问题,但是我在实践的时候没有查找到这个文件,可能是版本问题,如果有经验的话,这个方法比较快捷。
方法二:
暴力重装:
暴力的意思就是彻底重装,之前我有试过sudo pip3,sudo -H以及一些其他方法,但是没有效果。
以下方法最后解决了我的问题:
sudo pip3 install --upgrade --force-reinstall --no-cache-dir jupyter
来源:https://blog.csdn.net/qq_30901367/article/details/79734142