在 Windows 上通过命令行运行 Jupyter
Posted
技术标签:
【中文标题】在 Windows 上通过命令行运行 Jupyter【英文标题】:Running Jupyter via command line on Windows 【发布时间】:2017-04-23 10:10:24 【问题描述】:我已经在 Windows 10、Python 3.x 上通过
安装了 Jupyter$ pip install jupyter
安装工作正常,即使我确实重新启动了终端。
但试图运行
$ jupyter notebook
出现以下错误
'jupyter' is not recognized as an internal or external command, operable program or batch file.
如何以及在哪里找到 Jupyter 的可执行文件?
【问题讨论】:
【参考方案1】:请先尝试以下任一命令;
$ py -m notebook
$ python -m notebook
对于 jupyterlab 用户
py -m jupyterlab
否则
$ python -m pip install jupyter --user
$ jupyter notebook
如果这不起作用。
pip 不会将 jupyter 直接添加到本地路径。
输出
$ which python
/c/Users/<username>/AppData/Local/Programs/Python/Python35-32/python
经过一番挖掘,我在文件夹中找到了 jupyter 的可执行文件:
C:\Users\<username>\AppData\Roaming\Python\Python35\Scripts\jupyter.exe
Difference between local and roaming folder
因此,如果您希望能够通过命令行执行程序,则需要将其添加到 %PATH 变量中。这是执行此操作的 powershell 脚本。请务必添加“;”在添加新路径之前。
$ [Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\Users\<username>\AppData\Roaming\Python\Python35\Scripts", [EnvironmentVariableTarget]::User)
更新:
如果您使用的是python3
,请将python
换成python3
但我鼓励你改用pyenv
:)
【讨论】:
谢谢。几个月前我一直在寻找这个解决方案,但放弃了。最后,我发现它深深地埋在这里 非常感谢您的回答。我找到了Scripts
文件夹的路径并将其添加到我的环境变量中的路径中,这样就成功了。
我相信当您使用pip --user
在本地安装时会发生这种情况
如果你用的是python3,写python3 -m notebook
which
不是命令提示符或 Powershell 命令,因此您必须在 Git Bash 或其他东西中运行它。在命令提示符中,您可以改用 where
。【参考方案2】:
如果您绝对确定您的 Python 库路径在您的系统变量中(并且您可以在 pip 安装 Jupyter 时找到该路径,您只需阅读一下)并且您仍然遇到“找不到或无法识别命令” Windows中的错误,您可以尝试:
python -m notebook
至少对于我的 Windows(Windows 10 Pro),拥有python -m
是我可以从命令行运行我的 Python 包而不会遇到某种错误的唯一方法
Fatal error in launcher: Unable to create process using ' "
或
Errno 'THIS_PROGRAM' not found
【讨论】:
我用Ipython很多年了,第一次遇到这个问题。我认为(正如其他人所提到的)它与 Windows10 和运行python -m notebook
有关!感谢您的解决方案。
这对我有用,但我不明白为什么jupyter notebook
命令不再起作用(在我在 Windows 10 上重新安装 python 后它停止工作)
对于 JupyterLab 使用 python -m jupyterlab
python -m notebook
像魔法一样工作,感谢分享
虽然您的回答提供了解决方案,但并没有解释为什么会发生这种情况。我在这里回答了***.com/questions/41034866/…【参考方案3】:
如果您使用的是 Anaconda 发行版,请确保在安装它时选中“更改路径”选项。
【讨论】:
在 Windows 机器上安装 Anaconda 后:将 Python 位置添加到系统变量“Path”。使用Windows搜索找到系统编辑器更改PATH环境变量【输入整个路径,包括c:\&确保以“;”开头分隔符] 或使用命令行 "set path=%path%;C:\users\your-path-here\" ...现在您可以从任何命令提示符位置调用 Python。【参考方案4】:我让 Jupyter notebook 在 Windows 10 中运行。我发现不依赖像 Anaconda 这样的发行版来完成这项任务的最简单方法是使用 Cygwin。
在 Cygwin 中安装 python2、python2-devel、python2-numpy、python2-pip、tcl、tcl-devel(我在下面包含了我安装的所有软件包的图片)以及您想要的任何其他可用的 python 软件包。这是迄今为止最简单的选择。
然后运行这个命令来安装 jupyter notebook:
python -m pip install jupyter
以下是我为添加更多库而运行的实际命令,以防其他人也需要此列表:
python -m pip install scipy
python -m pip install scikit-learn
python -m pip install sklearn
python -m pip install pandas
python -m pip install matplotlib
python -m pip install jupyter
如果上述任何命令失败,请不要担心解决方案在大多数情况下都非常简单。您所做的是查看任何缺少的包/库的构建失败。
假设它显示缺少 pyzmq 然后关闭 Cygwin,重新打开安装程序,进入包列表屏幕,显示“完整”,然后搜索 zmq 之类的名称并安装这些库并重新尝试以上命令。
使用这种方法,最终成功解决所有缺失的依赖项相当简单。
Cygwin package list
安装完所有内容后,在 Cygwin 中运行,转到您想成为笔记本 ui 树“根”的文件夹并键入:
jupyter notebook
这将启动笔记本并显示如下输出:
$ jupyter notebook
[I 19:05:30.459 NotebookApp] Serving notebooks from local directory:
[I 19:05:30.459 NotebookApp] 0 active kernels
[I 19:05:30.459 NotebookApp] The Jupyter Notebook is running at:
[I 19:05:30.459 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
Copy/paste this URL into your browser when you connect for the first time, to login with a token:
http://localhost:8888/?token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
【讨论】:
【参考方案5】:我遇到了同样的问题,但是
py -m notebook
为我工作。
【讨论】:
【参考方案6】:我的问题是我用户的文件夹在文件夹名称中有一个空格。
在创建新用户并切换到该 Windows 用户后,“Anaconda”中的 Windows 快捷方式和链接工作正常。
Windows 8.1 64 位。最新的 Anaconda。
注意:我最终卸载了重新安装的 Anaconda,但我的感觉是问题实际上只是 Windows 用户用户名/用户文件夹中的空间。
【讨论】:
【参考方案7】:在 Windows 10 中,您可以使用 ipython notebook
。它对我有用。
【讨论】:
[TerminalIPythonApp] WARNING | Subcommand 'ipython notebook' is deprecated and will be removed in future versions.
SSL:ImportError: DLL load failed: The specified procedure could not be found.
【参考方案8】:
您可以将以下内容添加到您的路径中
C:\[Python Installation path]\Scripts
例如C:\Python27\Scripts
它将开始为 jupyter 和您将在此处执行的所有其他 pip 安装工作。
【讨论】:
【参考方案9】:使用 python 3.6.3。在通过命令“python -m pip install jupyter”安装 Jupyter 之后,使用 windows 命令提示符时,“jupyter notebook”命令对我不起作用。
但是,最后 'python -m notebook' 确实起作用并让 jupyter notebook 在本地运行。
http://localhost:8888/tree
【讨论】:
【参考方案10】:这是我解决上述问题的方法,希望对您有所帮助:
使用python官网安装python 3.7,安装时勾选安装PATH
之后打开cmd(一定要在步骤1之后打开)并写:pip install jupyter ENTER
现在您应该可以使用以下命令打开 jupyter notebook:jupyter notebook
看似简单,但也有帮助。
【讨论】:
【参考方案11】:首先,您应该确保将 python 路径放在系统变量中。 然后尝试运行这个
python -m pip install jupyter --user
然后 运行这个
py -m notebook or jupyter notebook
【讨论】:
【参考方案12】:我加了
c:\users\[user]\appdata\roaming\python\python37\site-packages
到路径并且它起作用了。
【讨论】:
【参考方案13】:在 Windows 10 中: 如果您使用 anaconda3 安装 Jupyter notebook,安装时忘记勾选将环境变量添加到系统,则需要手动将以下环境变量添加到“Path”变量中: (搜索编辑环境变量的窗口设置”)
Environment variables for Anaconda3
【讨论】:
【参考方案14】:我的问题是我从错误的目录运行jupyter
命令。
导航到包含脚本的路径后,一切正常。
路径-
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\Scripts
【讨论】:
【参考方案15】: ## 窗口命令默认安装(安装时只需勾选“添加路径”和“下一步”)
python -m notebook
用于自定义安装在 C:\
jupyter notebook
【讨论】:
【参考方案16】:如果你安装了 jupyter “python -m pip install jupyter”命令 代替 “$ pip install jupyter”命令 然后按照以下步骤操作:
-
创建记事本
将其扩展名从“.txt”更改为“.ipynb”
右键单击它并单击“打开方式”
在弹出窗口中,转到 -C:\Users\\AppData\Roaming\Python\Python38\Scripts
点击“jupyter-lab.exe”
【讨论】:
【参考方案17】:在Python 3.7.6 for Windows 10。安装后,我使用这些命令。
1. pip install notebook
2. python -m notebook
或
C:\Users\Hamza\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\Scripts .
对于我的电脑,python 脚本位于上述路径中。您可以在环境变量中添加此路径。然后运行命令。
1. jupyter notebook
【讨论】:
【参考方案18】:100% 工作解决方案:
按照以下步骤操作:
打开您下载“python-3.8.2-amd64.exe”安装程序或任何其他版本的python包的文件夹
双击“python-3.8.2-amd64.exe”
点击“修改”
您将看到“可选功能”
点击“下一步”
选择“将python添加到环境变量”
点击“安装”
然后你可以在你想要的任何文件夹中运行 jupyter
E.g open "cmd" command prompt
Type :
E:
E:\>jupyter notebook
It will get started without showing
'Jupyter' is not recognized
谢谢
【讨论】:
【参考方案19】:我安装了两个 python 版本: 1. Python 3.8.2:这是独立安装的 2. Python 3.7.6:与 Anaconda 3 一起安装
即使正确设置路径变量,多个版本也会导致冲突。
我已经卸载了 Python 3.8.2,重启后,命令
jupyter notebook
完美运行:)
【讨论】:
【参考方案20】:检查你是否在环境变量中正确地给出了python PATH。 如果没有,则设置 python 路径。然后使用:
$ python -m notebook
【讨论】:
【参考方案21】:我在 windows7 中遇到了同样的问题,因为我刚刚在恢复点的帮助下恢复了我的电脑,之后笔记本就停止了工作。我试图更改路径设置,但没有任何效果,所以我只是简单地使用安装它的应用程序卸载了 python,然后我再次安装它。之后,我再次安装了 jupyter notebook,然后它运行良好。 谢谢
【讨论】:
【参考方案22】:您可以创建一个批处理文件并在 Windows 搜索中搜索 Jupiter 并打开其属性,您将获得此字符串。 D:\anaconda3\python.exe D:\anaconda3\cwp.py D:\anaconda3 D:\anaconda3\python.exe D:\anaconda3\Scripts\jupyter-notebook-script.py "%USERPROFILE%/ " 得到这个之后,你可以用这个内容创建一个 jupitor.bat 文件 您可以将该文件保存在 d 或任何驱动器中的脚本文件夹中,并将脚本文件的路径添加到环境路径中
然后你可以通过在 cmd 中输入 jupitor 来轻松调用它。
【讨论】:
【参考方案23】:我刚刚在启用 Python 3.8/pip 的 Win10 机器上安装了 JupyterLab,所以我遇到了这些 Windows 启动问题。 如果一切正常(检查您是否有 Python 的 PATH,例如 C:\Users[Username]\AppData\Local\Programs\Python\Python38-32\Scripts),您只需运行:
jupyter-lab.exe
就是这样。
干杯
【讨论】:
【参考方案24】:安装我使用 windows命令行中的“pip install notebook”
运行 python -m notebook 对我不起作用,但 python3 -m notebook 有效
【讨论】:
【参考方案25】:首先运行这个命令
pip 安装 jupyter
然后添加系统变量path,这个路径就是jupyter等脚本所在的位置
PATH = C:\Users\AppData\Roaming\Python\Python38\Scripts
例如 PATH=C:\Users\HP\AppData\Roaming\Python\Python38\Scripts
之后我们可以从任何文件夹/目录运行 jupyter
jupyter 笔记本
【讨论】:
【参考方案26】:添加系统变量路径,这个路径是jupyter等脚本所在的地方
路径 -->
`C:\Users\<userName>\AppData\Roaming\Python\Python39\Scripts`
就像我的笔记本电脑 PATH 是:
"C:\Users\developer\AppData\Roaming\Python\Python39\Scripts"
之后,您将能够通过运行以下命令从任何文件夹和任何目录运行 jupyter
jupyter 笔记本
【讨论】:
【参考方案27】:我遇到了完全相同的问题,这让我发疯了。其他答案提供了解决方案,但没有解释为什么您和我都会遇到此问题。
我将尝试解释为什么会发生这种情况,然后提供一些解决方案。
你可以到最后看看 TL;DR。
发生了什么事?为什么会出现这个错误?
我将尝试逐步回答,以便清楚地解释所有内容。 如果一开始觉得太基础,请到本“文章”的末尾。
我将首先从常见的事情开始,例如从终端运行python
shell 或运行pip
。您将了解为什么您可以从终端执行此操作,我们将结束为什么 以及如何您也可以从终端运行 jupyter
笔记本。
准备好了吗?开始吧!
你有没有想过为什么可以在终端(命令提示符)中输入python
,然后突然启动 Python 解释器?
Microsoft Windows [Version 10.0.18363.1440]
(c) 2019 Microsoft Corporation. All rights reserved.
C:\Users\YOUR-USERNAME>python
Python 3.9.1 (tags/v3.9.1:1e5d33e, Dec 7 2020, 17:08:21) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
您可能已经知道(但可能不知道)这是因为 Python 已添加到 Windows PATH
环境变量中。你可能是在installation 时间或afterwards 完成的。
但是,这个PATH 环境变量是什么?
它基本上允许您运行位于内部的任何可执行文件 变量中指定的路径,在命令提示符下没有 必须提供可执行文件的完整路径。
您可以使用以下命令检查 PATH
变量的内容:
>>> import sys
>>> for path in sys.path:
print(path)
C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\python39.zip
C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\DLLs
C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\lib
C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39
C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\lib\site-packages
... (some other paths were taken out for clarity)
你可以看到这个文件夹:C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39
。这是安装 Python 3.9 的地方。让我们检查一下它的内容:
<DIR> DLLs
<DIR> Doc
<DIR> etc
<DIR> include
<DIR> Lib
<DIR> libs
<DIR> Scripts
<DIR> share
<DIR> tcl
<DIR> Tools
LICENSE.txt
NEWS.txt
python.exe
python3.dll
python39.dll
pythonw.exe
vcruntime140.dll
vcruntime140_1.dll
瞧! 我们有python.exe
文件(executable)。我们在PATH
中有一个 Python 可执行文件,这就是为什么你可以从终端输入python
来启动 Python 解释器。如果不是这种情况,您必须在终端中输入可执行文件的完整路径:
C:\Users\YOUR-USERNAME> C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\python)
不仅仅是:
C:\Users\YOUR-USERNAME> python
当你使用pip
时呢?
原理是一样的。您可以从终端运行pip
,因为PATH
变量中有一个pip
可执行文件。
如果您转到C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\Scripts\
(在上面显示的PATH
中),您会看到许多可执行文件。其中之一是pip
。其实我有三个版本:pip
、pip3.9
和pip3
。
Scripts
folder 允许从终端运行可执行文件。像 pip
或您打算直接从终端运行的其他库。 Scripts
文件夹:
...不是为您准备的,它适用于安装为的脚本 您安装的模块的组件。例如, pip 是一个模块, 但它也有一个同名的包装脚本 pip,它将是 安装在该目录中。
如果你把东西放在那里并且它在你的 PATH 中正确,那么它 应该是可执行的
该包装脚本将是pip
可执行文件。运行this executable文件时,会定位到Python安装文件夹下的pip
文件夹,运行pip
。
但您也可以直接从安装文件夹 (C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\Lib\site-packages
) 运行 pip
,而不需要可执行的 pip
文件。
但是,你怎么能做到呢?
很高兴你问。有一个 Python way 可以将模块作为主模块运行(无需导入它)。
python -m pip
当你直接运行一个模块时,它的名字变成__main__
。 -m
所做的是:
在
sys.path
中搜索命名模块并将其内容作为__main__
module 执行。
__main__
是什么?
'__main__'
是***代码执行的范围的名称。从标准读取时,模块的
__name__
设置为等于'__main__'
输入、脚本或来自交互式提示。 ...
我猜pip
可执行文件做了类似的事情,或者至少具有相同的效果:启动pip
。
这和 Jupyter Notebook 有什么关系?!
认为Jupyter Notebook
与pip
相同。如果你想在终端中运行jupyter
,你需要一个在PATH
上的可执行文件。
我们已经看到pip
或jupyter
等模块的可执行文件位于C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\Scripts\
。
如果我检查文件夹的内容,我会看到:
easy_install-3.9.exe
easy_install.exe
f2py.exe
jsonschema.exe
jupyter-bundlerextension.exe
jupyter-console.exe
jupyter-nbconvert.exe
jupyter-nbextension.exe
jupyter-notebook.exe
jupyter-qtconsole.exe
jupyter-serverextension.exe
jupyter-trust.exe
pip.exe
pip3.9.exe
pip3.exe
我看到了已经提到的pip
、pip3.9
和pip3
。但我没有看到 jupyter
(单独的单词“jupyter”)。
如果我在终端中输入jupyter
,我会收到启动所有错误:
'jupyter' is not recognized as an internal or external command, operable program or batch file.
我们终于找到了您的问题的答案!!!
'jupyter' 未被识别为命令,因为在名为 jupyter
的 Scripts
文件夹中没有可执行文件。
所以,让我们尝试一个不同的可执行文件。 jupyter-notebook
呢?
BINGO!笔记本正在运行!
Serving notebooks from local directory:
C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\Scripts
Jupyter Notebook 6.3.0 is running at:
http://localhost:8888/?token=... (edited)
or http://127.0.0.1:8888/?token=... (edited)
Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
我不知道为什么我没有名为“jupyter”的jupyter
可执行文件。 official documentation 说要在终端上使用 jupyter notebook
,但似乎在某些情况下它不起作用。而且我认为这与我上面提到的有关:Scripts
文件夹中没有 jupyter
可执行文件。
如果你还记得,我告诉过你,你可以使用python -m pip
作为主模块运行pip
。
碰巧你可以用jupyter
做同样的事情。我们只需要知道如何调用它。与pip
一样,我们必须检查安装第3 方库的文件夹:C:\Users\YOUR-USERNAME\AppData\Local\Programs\Python\Python39\Lib\site-packages
。
您会看到jupyter_console
,但这只是在终端中创建了一个交互式笔记本,而不是您想要的。您还将找到以.dist.info
结尾的文件夹,例如jupyter_console-6.4.0.dist-info
。这只是 Wheel Binary Package 构建器的 metadata。您还会看到类似jupyterlab_pygments
的文件夹,但that's 是JupyterLab
。我们想使用经典的 Jupyter notebook。
我们想要运行notebook
。我们怎么知道的?
您将在文件夹site-packages
中看到文件夹(package)notebook
。里面有一个file called__main__.py
:
#__main__.py
if __name__ == '__main__':
from notebook import notebookapp as app
app.launch_new_instance()
它正在调用 notebookapp.py
which is 一个 “基于龙卷风的 Jupyter 笔记本服务器。” 是的,这就是我们需要的。
我们可以see 让launch_new_instance
在notebookapp
中调用launch_instance()
、which“启动 Jupyter 应用程序的实例”。
完美!我们在正确的文件夹中。要从 Python 交互式 shell 运行 jupyter notebook,我们必须运行 notebook 包:
python -m notebook
*** 摘要:解决方案 ***
tl;博士:
我已经解释并说明了为什么会发生这个错误。
现在让我们总结一下解决方案:
要知道jupyter
可执行文件的名称(在Scripts
文件夹中),因此您可以直接从终端(命令提示符)运行:
jupyter notebook
或作为:
jupyter-notebook
或者你有什么名字。
从 Python 中将 notebook 作为主模块运行:
python -m notebook
我希望这对您有帮助,就像它对我有帮助一样。我愿意接受您的 cmets 和建议。
【讨论】:
然而,jupyter notebook
不起作用,而 jupyter-notebook
完美运行。请参阅 this post 我发现此异常的地方。
@its_deb 是的,发生了。在我的回答中,我试图提供一个解释。感谢您的帖子。【参考方案28】:
有同样的问题。最后搜索到了 jupyter.exe 目录在我电脑上的位置。由于某种原因,它在 C:\VTRoot\HarddiskVolume4\Users[用户]\AppData\Local\Programs\Python
而 Python 是 C:\Users[用户]\AppData\Local\Programs\Python
所以我将完整的 Python39 文件夹从 VTRoot 复制到 AppData 中的主要 Python39 python 文件夹。问题就解决了。
【讨论】:
【参考方案29】:首先检查你的 python 安装在哪里,前往
C:\Users\**username**\AppData\Local\Programs\Python\Python39\Scripts
这是您通常会找到安装 python 的路径。在这个输入之后
cd.. to get one step out of the Scripts folder
在此处安装 jupyter 后使用:
$ pip install jupyter
安装很好,当我尝试打开 jupyter notebook 时,它给了我以下错误。
'jupiter is not recognized as an internal or external command, operable program or batch file.
我查了很多资源,但还是遇到了同样的问题。在网上做了很多事情后,我自己发现可能是由于一些更新(对于某些用户),它不会通过输入命令打开
jupyter notebook
相反,您必须输入
jupyter-notebook
我唯一缺少的是这个连字符减号。希望这对你也有用。
【讨论】:
【参考方案30】:我刚安装并运行 jupyter notebook 时发现了这个错误。然后我从
C:\Users\<user-name>\AppData\Local\Programs\Python\Python39\Scripts
。
实际文件名是"jupyter-notebook"
。
安装指南将其命名为"jupyter notebook"
来运行服务器。您必须在命令行中运行命令"jupyter-notebook"
,它将运行。谢谢!
【讨论】:
以上是关于在 Windows 上通过命令行运行 Jupyter的主要内容,如果未能解决你的问题,请参考以下文章