Ipython笔记本,如何设置正确的内核路径

时间:2016-01-13 09:17:10

标签: path ipython anaconda jupyter jupyter-notebook

在Windows 7 64bit上运行ipyhton笔记本并启动带有python 2内核的笔记本时出现错误:

Traceback (most recent call last):
  File "C:\Users\USER1\Anaconda2\lib\site-packages\notebook\base\handlers.py", line 436, in wrapper
    result = yield gen.maybe_future(method(self, *args, **kwargs))
  File "C:\Users\USER1\Anaconda2\lib\site-packages\notebook\services\sessions\handlers.py", line 56, in post
    model = sm.create_session(path=path, kernel_name=kernel_name)
  File "C:\Users\USER1\Anaconda2\lib\site-packages\notebook\services\sessions\sessionmanager.py", line 66, in create_session
    kernel_name=kernel_name)
  File "C:\Users\USER1\Anaconda2\lib\site-packages\notebook\services\kernels\kernelmanager.py", line 84, in start_kernel
    **kwargs)
  File "C:\Users\USER1\Anaconda2\lib\site-packages\jupyter_client\multikernelmanager.py", line 109, in start_kernel
    km.start_kernel(**kwargs)
  File "C:\Users\USER1\Anaconda2\lib\site-packages\jupyter_client\manager.py", line 244, in start_kernel
    **kw)
  File "C:\Users\USER1\Anaconda2\lib\site-packages\jupyter_client\manager.py", line 190, in _launch_kernel
    return launch_kernel(kernel_cmd, **kw)
  File "C:\Users\USER1\Anaconda2\lib\site-packages\jupyter_client\launcher.py", line 115, in launch_kernel
    proc = Popen(cmd, **kwargs)
  File "C:\Users\USER1\Anaconda2\lib\subprocess.py", line 710, in __init__
    errread, errwrite)
  File "C:\Users\USER1\Anaconda2\lib\subprocess.py", line 958, in _execute_child
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

我进一步调查过,我在launcher.py文件中的proc = Popen(cmd, **kwargs)之前添加了以下打印行

    print cmd
    print kwargs

现在我看到使用cmd =

调用proc = Popen(cmd, **kwargs)
['C:\\Users\\USER1\\Anaconda2_32bit\\python.exe', '-m', 'ipykernel', '-f', '
C:\\Users\\USER1\\AppData\\Roaming\\jupyter\\runtime\\kernel-a3f46334-4491-4
fef-aeb1-6772b8392954.json']

这是一个问题,因为我的python.exe不在

C:\\Users\\USER1\\Anaconda2_32bit\\python.exe

但在

C:\\Users\\USER1\\Anaconda2\\python.exe

但是我检查了计算机/高级系统设置/高级/环境变量中的路径,并且从未在那里指定\\Anaconda2_32bit\\

因此我怀疑在其他地方指定了错误路径。这可能在哪里,我该如何解决?

此外,我之前在\\Anaconda2_32bit\\安装了Anaconda,但我已将其卸载。

1 个答案:

答案 0 :(得分:8)

ipython在特殊配置文件中注册了内核 我已经运行了命令:

ipython kernelspec list
输出是:

Available kernels:
  python2    C:\ProgramData\jupyter\kernels\python2

我查看了C:\ProgramData\jupyter\kernels\python2\kernel.json文件,并且为python2设置了错误的路径。我已经修好了路径,现在就可以了。