Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从命令行运行的windows上安装Python 3_Python_Python 3.x - Fatal编程技术网

从命令行运行的windows上安装Python 3

从命令行运行的windows上安装Python 3,python,python-3.x,Python,Python 3.x,奇怪的是,为什么Python 3.x没有像在MacOSX和Linux上那样安装在Windows上,使用命令行“python3”运行默认值?是否有某种方式来配置Python,使其像这样运行?谢谢 编辑:只是补充一下,我问的原因是我的计算机上同时安装了Python 2和Python 3解释器,因此它是不明确的,因为这两个解释器都是使用命令“Python”运行的。您必须将Python bin文件夹添加到您的路径中。您可以手动执行此操作,但当您安装python时,我记得您可以选择执行此操作。您可能错过了

奇怪的是,为什么Python 3.x没有像在MacOSX和Linux上那样安装在Windows上,使用命令行“python3”运行默认值?是否有某种方式来配置Python,使其像这样运行?谢谢


编辑:只是补充一下,我问的原因是我的计算机上同时安装了Python 2和Python 3解释器,因此它是不明确的,因为这两个解释器都是使用命令“Python”运行的。

您必须将Python bin文件夹添加到您的路径中。您可以手动执行此操作,但当您安装python时,我记得您可以选择执行此操作。

您可能错过了安装程序底部的复选框

此处有完整的文档:

然后,我认为您只需从命令提示符运行
python
,而不是
python3
。Unix系统之所以有
python3
,是因为在许多系统中
python
默认为Python2.x

我问这个问题的原因是因为我的计算机上同时安装了Python2和Python3解释器,因此它是不明确的,因为这两个解释器都是使用命令“Python”运行的

要运行Python 2可执行文件,请执行以下操作:

C:\> py -2
C:\> py -3
要运行Python 3可执行文件,请执行以下操作:

C:\> py -2
C:\> py -3
其中,
py
是一个与Python3安装捆绑在一起的组件

py
识别shebang(例如,
#!/usr/bin/env python3
导致运行Python 3可执行文件),它尊重VirtualNV(如果运行
py
而不指定显式Python可执行文件版本),即运行:

C:\> py your_script.py
并且会自动使用正确的python版本——您不需要在命令行上显式指定python版本

在Windows上安装python3.x并不像在MacOSX和Linux上那样使用命令行“python3”运行默认值,这有什么特别的原因吗

OSX和Linux默认安装了
python
可执行文件,目前大多数情况下它都引用python2版本,这就是为什么需要一个单独的
python3
名称的原因

默认情况下,Windows上没有Python。因此,您安装的任何版本都只是
python
(我猜)。管理多个python版本的推荐方法是使用python启动器

是否有某种方式来配置Python,使其像这样运行

如果您想键入
python3 some_script.py
,而不是
py some_script.py
,或者甚至只是键入
some_script
(假设
.py
位于
.PATHEXT%
中,并且Python启动器配置为运行Python脚本(选中
assoc.py
ftype Python.File
)--默认值)然后创建一个bat文件,例如,
python3.cmd
并将其放入
%PATH%

"C:\path to\Python 3.X\python.exe" %*

我在Windows上使用多个Python2.x和3.x发行版。其中一些是“可移植的”——即未记录在Windows注册表中,因此无法通过Python 3.3+附带的版本选择器
py.exe
访问。为了保存我的理智,我编写了
SelectPython.bat
,它是。它根据给定的目标(python.exe的父目录的相对或绝对路径)配置
PYTHONHOME
PYTHONPATH
PATH
变量。您可以在命令行会话的剩余时间内以粘性的方式执行此操作:

> SelectPython C:\Path\To\Desired\Version\Of\Python
> python
或者是暂时的,即调用特定的python命令而不影响从中调用它的shell的环境:

> SelectPython C:\Path\To\Desired\Version\Of\Python  python -c "import sys;print(sys.version)"

你可能会发现它很有用。

我非常喜欢点击这个框。但是,要从命令行运行,您需要键入“python”而不是“python3”。这是一个问题,因为我同时安装了python2和python3,所以它是不明确的(您使用“python”来运行这两个)。Windows会查看路径,并选择最先出现的“python”。我很清楚路径的工作原理。你应该说明你已经有python2了。我认为您可以将python.exe从Py3重命名为python3.exe。我非常喜欢单击该框将其添加到path。但是,要从命令行运行,请键入“python”而不是“python3”。谁支持它?看看您的Python安装:Windows上没有bin文件夹。python安装的根目录中有
python.exe
pythonw.exe
文件。没有
python3.exe