已安装Jupyter但无法在PowerShell启动,疑与Windows OneDrive路径有关
嘿,我来帮你搞定Jupyter在PowerShell启动不了的问题!
方法1:用Python模块直接调用
有时候环境变量没配置到位,直接通过Python模块启动是最稳妥的。在PowerShell里输入下面的命令试试:python -m jupyter notebook
如果你的系统里同时装了Python 2和3,换成python3 -m jupyter notebook,或者用Windows自带的Python启动器:py -3 -m jupyter notebook。
方法2:通过Anaconda启动(如果是用Anaconda安装的Jupyter)
要是你是用Anaconda全家桶装的Jupyter,先打开Anaconda Prompt,输入jupyter notebook肯定能启动。如果非要在PowerShell里用,得先激活你的conda环境,比如默认的base环境:conda activate base
激活之后再输入jupyter notebook就行。
方法3:检查系统环境变量
Jupyter启动不了很多时候是因为它的安装路径没被加到系统Path里。你可以:
- 右键“此电脑”→“属性”→“高级系统设置”→“环境变量”
- 在系统变量的
Path里,看看有没有类似C:\PythonXX\Scripts或者C:\Users\你的用户名\AppData\Roaming\Python\PythonXX\Scripts的路径(XX是你的Python版本号) - 如果没有,把这个路径加进去,重启PowerShell再试。
你猜的没错!OneDrive确实可能是罪魁祸首,不少人都踩过这个坑。原因通常是Jupyter的配置文件或者默认工作目录被放在了OneDrive同步路径下,同步权限、路径里的特殊字符(比如空格、中文)都可能导致启动失败。
你可以按下面的步骤排查:
- 查看Jupyter配置文件的位置
在PowerShell里输入:jupyter --config-dir
如果返回的路径包含OneDrive(比如C:\Users\你的用户名\OneDrive\.jupyter),那基本就是这个问题了。 - 修改Jupyter的默认工作目录
先生成配置文件(如果还没有的话):jupyter notebook --generate-config
找到生成的jupyter_notebook_config.py文件,用记事本或者编辑器打开,找到c.NotebookApp.notebook_dir这一行,去掉前面的注释符号#,改成你本地非OneDrive的路径,比如:c.NotebookApp.notebook_dir = 'C:\\Users\\你的用户名\\Documents\\JupyterNotebooks'
注意路径里的反斜杠要写成双反斜杠哦。 - 检查Python的site-packages路径
有时候OneDrive会同步Python的site-packages文件夹,导致模块调用出错。输入下面的命令查看路径:python -c "import site; print(site.getsitepackages())"
如果输出的路径里有OneDrive的字样,建议你把Python重新安装到非OneDrive的本地路径里。
要是上面的方法都不管用,试试彻底卸载重装Jupyter:
先卸载所有相关组件:pip uninstall jupyter jupyter_core jupyter-client jupyter-console notebook ipykernel ipython -y
然后重新安装:pip install jupyter
装完再用python -m jupyter notebook启动,应该就能正常运行了。
内容的提问来源于stack exchange,提问作者user13502078

