Я установил Python и Jupyter в папку. И затем я переместил эту папку. Python был в E:\Python и Jupyter в E:\Python\Scripts. Теперь Python находится в E:\Projects\Tests\Python и Jupyter находится в E:\Projects\Tests\Python\Scripts.
Когда я пытаюсь запустить ноутбук Jupyter с помощью командной строки (jupyter notebook
) из E:\Projects\Tests\Python\Scripts, у меня есть ошибка:
Fatal error in launcher: Unable to create process using
'"E:\Python\python.exe" "E:\Projects\Tests\Python\Scripts\jupyter.exe" notebook'
Юпитер сохранил старый путь Питона.
Как я могу указать новый путь? Есть ли командная строка, например
start "E:\Projects\Tests\Python\python.exe" "E:\Projects\Tests\Python\Scripts\jupyter.exe" notebook'
(это не работает)
Кажется, что jupyter не находит новый каталог в переменной %path%
.
Вы находите свои новые каталоги в переменной %path%
при вводе
echo %path%
в командном окне? Если нет, попробуйте добавить его, введя в командной строке
setx path "%path%;E:\Projects\Tests\Python\python.exe;E:\Projects\Tests\Python\Scripts\jupyter.exe"
РЕДАКТИРОВАТЬ: Изменение%% окна %path%
нежелательно.
Предпочтительным является изменение файла ipython_config.py
В этом случае откройте окно команды и введите
ipython profile create
а также
ipython locate
Это даст вам путь к вашей папке .ipython
, которая теперь содержит ipython_config.py
умолчанию. Перейти к этой строке
## lines of code to run at IPython startup.
#c.InteractiveShellApp.exec_lines = []
и заменим вторую строку на
c.InteractiveShellApp.exec_lines = ['import sys;
sys.path.append("E:\Projects\Tests\Python\");
sys.path.append("E:\Projects\Tests\Python\Scripts\")']
Это добавит новые пути TEMPORARY к переменной path
каждый раз, когда jupyter notebook начнет iPython. Поэтому каждый раз, когда вы перемещаете свои папки, вам придется настраивать эти строки в файле ipython_config.py.
Попробуйте переустановить jupyter.
pip install --upgrade --no-deps --force-reinstall jupyter
start "E:\Projects\Tests\Python\python.exe" "E:\Projects\Tests\Python\Scripts\jupyter.exe" notebook'
. Это последнее решение не работает, к сожалению.