Python命令在命令提示符下不起作用
Posted
技术标签:
【中文标题】Python命令在命令提示符下不起作用【英文标题】:Python command not working in command prompt 【发布时间】:2012-11-15 19:09:43 【问题描述】:当我在命令行中输入python
时,命令提示符会显示python is not recognized as an internal or external command, operable program, or batch file
。我该怎么办?
注意:我的计算机上安装了 Python 2.7 和 Python 3.2。
【问题讨论】:
【参考方案1】:我已经从Releases for Windows 安装了最新的适用于 Win10 的 Python。
只需在 Command Prompt Window
中输入 py
即可启动 Python。
Microsoft Windows [Version 10.0.15048]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\sg7>py
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>`enter code here`
测试:
>>> print("hello!")
hello!
>>>
请注意,在我的例子中,Python 安装在 C:\Users\sg7\AppData\Local\Programs\Python\Python36>
目录中
C:\Users\sg7\AppData\Local\Programs\Python\Python36>dir
Volume in drive C is Windows7_OS
Volume Serial Number is 1226-12D1
Directory of C:\Users\sg7\AppData\Local\Programs\Python\Python36
08/05/2018 07:38 AM <DIR> .
08/05/2018 07:38 AM <DIR> ..
12/18/2017 09:12 AM <DIR> DLLs
12/18/2017 09:12 AM <DIR> Doc
12/18/2017 09:12 AM <DIR> include
12/18/2017 09:12 AM <DIR> Lib
12/18/2017 09:12 AM <DIR> libs
10/03/2017 07:17 PM 30,334 LICENSE.txt
10/03/2017 07:17 PM 362,094 NEWS.txt
10/03/2017 07:15 PM 100,504 python.exe
10/03/2017 07:12 PM 58,520 python3.dll
10/03/2017 07:12 PM 3,610,776 python36.dll
10/03/2017 07:15 PM 98,968 pythonw.exe
08/05/2018 07:38 AM 196,096 Removescons.exe
08/05/2018 07:38 AM 26,563 scons-wininst.log
08/05/2018 07:38 AM <DIR> Scripts
12/18/2017 09:12 AM <DIR> tcl
12/18/2017 09:12 AM <DIR> Tools
06/09/2016 11:53 PM 87,888 vcruntime140.dll
9 File(s) 4,571,743 bytes
10 Dir(s) 20,228,898,816 bytes free
当我在C:\Users\sg7>
目录级别时,python
可以通过键入来调用
AppData\Local\Programs\Python\Python36\python
C:\Users\samg>AppData\Local\Programs\Python\Python36\python
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
较新的 Python 3.7 将安装在:
C:\Users\YourUserNameHere\AppData\Local\Programs\Python\Python37
如果您希望可以添加到您的路径环境变量:
%USERPROFILE%\AppData\Local\Programs\Python\Python36
【讨论】:
这也适用于我。调用python
然后检查sys.executable
给我C:\\Python27\\python.exe
。打电话给py
,我得到C:\\Users\\user\\AppData\\Local\\Continuum\\anaconda3\\python.exe
。 Anaconda 在我的 PATH 中,但 Python27 不在。如果有人深入了解为什么会这样,我将非常感激!编辑:尝试运行py -i filename
,它在 Python 2.7 中运行。 Grr.
+1 虽然我不得不说这个快捷方式是可悲的。现在我想使用pip
,但不知道应该输入什么。
我是使用 Python 3.8 的 Win 10 用户,这对我也有用。我正在使用“Python file.py”,但什么也没发生。我输入了“py file.py”,它起作用了。谢谢!【参考方案2】:
终于成功了!!!
我需要做一些事情来让它工作
-
将 C:\Python27\ 添加到 PATH 系统变量的末尾
将 C:\Python27\ 添加到 PYTHONPATH 系统变量的末尾
我必须将它们添加到两者中才能正常工作。
如果我添加了任何子目录,由于某种原因它不起作用。
感谢大家的回复。
【讨论】:
对于较新版本的 Python,您可以在此处找到它:`C:\Users\UserNameHere\AppData\Local\Programs\Python\Python37` 天哪,他们为什么不能在安装时为我们这样做。这就是为什么人们更喜欢 C# PYTHONPATH 是我缺少的东西。 @NoName you mean like this? 为什么需要修改 PYTHONPATH 以从命令 shell 运行可执行文件?将目录添加到 PATH 应该足以运行 python.exe。然后 python 可能需要设置环境变量 PYTHONPATH 才能正常工作(据说是从某个地方导入模块)。为什么一个可执行文件不能自己检索它启动的目录是另一个谜,但至少应该可以运行它。可惜你没有解释。是的,正确的安装应该处理这类事情,而不是依赖于用户是操作系统专家。【参考方案3】:视频非常有用。
-
转到系统属性 -> 高级(或在
开始菜单。)
点击环境变量
编辑“PATH”变量
添加 2 个新路径“C:\Python27”和“C:\Python27\scripts”
再次运行 cmd 并输入 python。
它对我有用
【讨论】:
【参考方案4】:请考虑通过py launcher、as described in sg7's answer 启动 Python,而不是命令“python”,它会运行您最新版本的 Python(或让您选择特定版本)。 py 启动器在安装期间通过复选框启用(默认值:“on”)。
尽管如此,您仍然可以在“首次安装”或“修改”现有安装时将“python”命令放入 PATH。
首次安装:
在第一个对话框中选中“[x] Add Python x.y to PATH”框。以下是它在 3.8 版中的外观:
这具有将以下内容添加到PATH
变量的效果:
C:\Users\...\AppData\Local\Programs\Python\Python38-32\Scripts\
C:\Users\...\AppData\Local\Programs\Python\Python38-32\
修改现有安装:
重新运行您的安装程序(例如,在下载中,python-3.8.4.exe)并选择“修改”。 检查您想要的所有可选功能(可能没有更改),然后单击 [下一步]。勾选 [x]“将 Python 添加到环境变量”和 [安装]。
【讨论】:
我看不到高级选项 我已经彻底检查了区分首次安装和重新安装的答案,还提到了“py”启动器。而且,我已将其更新到 3.8【参考方案5】:在 Windows 7 中,命令提示符中的 python 启动命令是
c:\>python3
但在 Windows 10 中,命令提示符中的 python start 命令是
C:\>py
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 17:26:49) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
C:\>py --version
Python 3.6.3
C:\>
但在 Windows 10 python3 语法不起作用也没有给出任何错误。
Django 启动命令也使用 py 而不是 python3。
d:\>py manage.py runserver
【讨论】:
在 Windows 7 中,要从 cmd 提示符启动 python,您无需键入python3
,python
就足够了。安装目录中有一个python.exe
文件,至少对于我使用的3.8.6版本。
我在 Windows 10 上。在 cmd 窗口中 python
无法识别,但 py
有效。【参考方案6】:
如果其他人有同样的问题,如果你已经添加到 PATH 并且如果你使用完整路径运行它 (C:\Users\pete.kirkham\AppData\Local\Programs\Python\Python39\python
) 可以工作,在 Win 10 上,命令行命令 python
默认别名为Windows 商店。
转到设置>应用程序执行别名并禁用运行应用程序安装程序的python的别名。
更多细节可以在这个问题中找到CMD opens window store when I type python
(假设您的组织没有禁用 Windows 应用商店并且您通过应用商店安装它会在您安装时禁用此功能,但通过从 python.org 下载安装不会)
【讨论】:
难以置信...我发现了这个,老实说,这个别名确实是微软应该避免的。如果我在路径中添加一些东西,我希望它会在我调用它时被使用,而不是发生完全不同的事情。【参考方案7】:这对我有用:
PS C:\Users\MyUsername> py -V
Python 3.9.0
【讨论】:
【参考方案8】:他们已经给了我们一个脚本来为我们做这件事
C:\Users\hUTBER\AppData\Local\Programs\Python\tools\scripts\win_add2path.py
您需要确保关闭并打开cmd
,否则那里不会有新路径。
如果您找不到此脚本,这些是它将添加的路径,最后我必须手动添加。
C:\Users\hUTBER\AppData\Local\Programs\Python\Python35
C:\Users\hUTBER\AppData\Local\Programs\Python\Python35\Scripts
我和现在python
在cmd
工作的地方
【讨论】:
关闭并重新打开 cmd 提示符就可以了! 别忘了给答案投票:D 如果它有更多的选票,更多的人会看到它并尝试同样的事情 我确实投了赞成票。我很惊讶我是唯一一个对你的评论投赞成票的人。有时它就像关闭和重新打开终端一样简单。【参考方案9】:Kalle 发布了一个指向带有this video 的页面的链接,但它是在 XP 上完成的。如果您使用 Windows 7:
-
按 windows 键。
键入“系统环境”。按回车键。
按
alt + n
按alt + e
按右,然后按;
(这是一个分号)
不加空格,在最后输入:C:\Python27
按回车键两次。按 esc。
使用windows key + r
调出运行对话框。输入python
并按回车键。
【讨论】:
【参考方案10】:我可能是这里最新手的用户,我花了六个小时在 Windows 8 的命令行中运行 python。一旦我安装了 64 位版本,然后我将其卸载并替换为 32 位版本.然后,我在这里尝试了大多数建议,特别是通过在系统变量中定义路径,但它仍然没有用。
然后我在命令行中输入时意识到: 回声%path%
路径仍未定向到 C:\python27。所以我只是重新启动了计算机,现在它可以工作了。
【讨论】:
【参考方案11】:只有几厘米:
如果您只想在 PATH
上获取 Python,请不要设置 PYTHONPATH
。 PYTHONPATH
环境变量告诉 Python 在哪里寻找要导入的模块。将其设置为 C:\Python27\
不会有任何用处,尽管它可能是无害的。
从“编辑系统变量”修改环境变量(包括PATH
)对已经运行的进程没有影响。这意味着您必须重新启动 cmd.exe
才能使更改生效。但是,不需要重新启动。
修改 PATH 时,还要添加 Scripts 子目录。或者,换句话说(并使用前面的示例):添加;C:\Python27;C:\Python27\Scripts
。这将允许您从命令行运行诸如easy_install
、pip
、virtualenv
或sphinx
之类的脚本——一旦您安装了这些脚本。这与适用于 Windows 的 UNIX-y 差不多。 (注意,在全新安装 Python 后,Scripts
子目录不存在,但会在需要时创建。)
不要在PATH
上放置任何额外的Lib
或DLL
目录。没有必要,而且可能会造成伤害。
如果您安装了多个版本的 Python(这并不少见),您最好不要将其中任何一个放在 PATH
上,而是创建不同的快捷方式cmd.exe
为每个版本设置PATH
的不同版本。您可能还对PEP-397 感兴趣。
【讨论】:
【参考方案12】:您必须在系统路径中添加 python 可执行文件,执行以下操作,My Computer > Properties > Advanced System Settings > Environment Variables
> 然后在系统变量下创建一个名为“PythonPath”的新变量。在这个变量中我有"C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\other-foolder-on-the-path"
。
【讨论】:
这对我不起作用,我不确定我的电脑出了什么问题。 @Rohit Rayudu 尝试将C:\Python27
添加为路径之一。它应该工作。并检查您的 python 目录是否正确命名。
尝试重新启动,它应该可以工作。除此之外我不知道。
好的,谢谢你的帮助,我会重启我的电脑,我真的很希望它能正常工作。自从我卸载了 Google App Engine 后,这一直发生在我身上,这是否让您对可能出现的问题有任何其他想法?
如果重启后还是不行,请返回并确保您所做的环境变量更改仍然存在。【参考方案13】:
这是为使用他人共享计算机的办公室工作人员准备的。
我确实将我的用户路径放在了路径中,并在我的计算机的 PATH 变量中创建了 PYTHONPATH 变量。它列在计算机属性中的环境变量 -> Windows 7 中的高级设置下。
例子:
C:\Users\randuser\AppData\Local\Programs\Python\Python37
这样我就可以使用命令提示符了。
希望这会有所帮助。
【讨论】:
【参考方案14】:即使按照上述有价值答案的说明,从命令行调用 python 也会打开 Microsoft Store 并将我重定向到下载软件的页面。
我发现这是由AppData\Local\Microsoft\WindowsApps
中的 0 Ko python.exe 文件引起的,该文件优先于我的 PATH 中的 python 可执行文件。
从我的 PATH 中删除这个文件夹解决了它。
【讨论】:
【参考方案15】:似乎在您的 PATH 中找不到 python 可执行文件,它定义了它在哪里寻找可执行文件。有关如何在 PATH 中获取 python 可执行文件的说明,请参阅the official instructions。
【讨论】:
【参考方案16】:将 python bin 目录添加到计算机的 PATH 变量中。它列在计算机属性中的环境变量-> Windows 7 中的高级设置下。它应该与 Windows 8 相同。
【讨论】:
【参考方案17】:您需要将 python 添加到您的 PATH 中。我可能是错的,但 Windows 7 应该具有与 Windows 8 相同的 cmd。在命令行中试试这个。永久使用 setx
会更改您的 PATH。请注意,没有等号,而是使用引号。
setx PATH "%PYTHONPATH%;C:\python27"
将c:\python27
设置为您要运行的python 版本的目录,在命令提示符中输入python
。
【讨论】:
我试过了,它确实有效。如果我这样做,它会暂时起作用,但是如果我关闭命令提示符然后重新打开它并再次键入 python,它就会停止工作。这应该发生吗/我必须每次都插入这一行吗? @RohitRayudu:是的,如果你这样做只是暂时的——这就是为什么其他答案建议通过系统属性或控制面板进行更改。好消息是,这项工作似乎表明这是一个 PATH 设置问题。 我该如何解决这样的 PATH 设置问题,@martineau @enginefree 的回答听起来应该永久更改 PATH。 @RohitRayudu -setx
是set
的永久替代品,我对答案进行了更改。【参考方案18】:
只需使用命令py
。我在 Windows 7 上运行 python 3.6.2,它工作得很好。
我从系统目录中删除了所有 python 路径,当我在 cmd 中运行命令 echo %path%
时,这些路径没有显示出来。 Python 仍然可以正常工作。
我在输入python
时不小心按了回车键...
编辑:我没有提到我将 python 安装到自定义文件夹 C:\Python\
【讨论】:
【参考方案19】:将python目录添加到路径时(计算机>属性>高级系统设置>高级>环境变量>系统变量>路径>编辑),记得添加分号,然后确保添加的目录准确存储文件“python.exe”的位置(例如 C:\Python\Python27,如果这是存储“python.exe”的位置)。然后重新启动命令提示符。
【讨论】:
【参考方案20】:如果您正在使用命令提示符,并且即使在将 python 路径添加到系统变量 PATH 后仍遇到问题。
记得重启命令提示符(cmde.exe)。
【讨论】:
【参考方案21】:我想添加一个安装时发生的常见问题。路径安装长度可能太长。为避免这种情况,请更改标准路径,使其短于 250 个字符。
当我在 WIN10 操作系统上安装软件并进行自定义安装时,我意识到了这一点。在自定义安装中,应该可以通过软件将 Python 添加为 PATH 变量
【讨论】:
这是非常正确的。我遇到了同样的问题,将路径更改为更短的路径解决了它。谢谢!【参考方案22】:这些都不适合我。 要真正在其路径中识别 Python,您需要做的是仅从该网站而不是其他网站下载它的最新版本: https://www.python.org/downloads/
但安装时要小心;如果您有 Windows 计算机,默认安装设置为不将 Python 的路径添加到控制面板中的环境变量中,但您应该更改设置,以便安装完成,它会自行完成。
【讨论】:
您说“只从本网站下载最新版本,不从其他网站下载:python.org/downloads”,但您从未说过“本网站”是什么。以上是关于Python命令在命令提示符下不起作用的主要内容,如果未能解决你的问题,请参考以下文章
使用 SSH 密钥登录在 Git Bash 上不起作用,但在 Windows 命令提示符中起作用 [关闭]
Snowflake METADATA$FILENAME 关键字在 snowsql(Unix 命令提示符)中不起作用,但在雪花 UI 中起作用