我在我的系统中安装了Anaconda 2 & 3。 Anaconda 2包含python 2.7&Anaconda 3包含python 3.6。
我需要使用命令提示符运行我的python代码,我需要使用python 3.6
当我正在运行python --version时,我得到python 2.7.14。 如何将其更改为python 3.6?
只需指定要使用的可执行文件的路径即可。 如果您使用的是Linux,我认为您可以使用which命令吗?
尝试python3 --version
控制完整python环境的最佳方法是使用virtualenv。 其余的在这里得到回答stackoverflow.com/questions/23842713/
运行$ python3。 这应该打开一个python3交互式提示。
如您所见,我安装了Python2和Python3。
我希望你知道python可执行文件的路径必须添加到Windows中的PATH环境变量中。如您所见,Python2的路径位于我系统中Python3的路径之上。
cmd如何运行命令?
它在cmd打开的目录中搜索具有相同名称的可执行文件,然后在Windows PATH变量中提供的位置搜索命令,从TOP到BOTTOM。
这意味着,它可以获得Python2的路径,然后才能到达Python3的路径。因此,每次在cmd中键入python时,它都会运行Python2。
Python2和Python3可执行文件在Windows中具有相同的名称,因此它永远不会运行python3。
什么看似明显的解决方案?
您可能会认为,将Python3可执行文件的python.exe名称更改为python3.exe将解决您的问题。你是部分正确,它会起作用。但你必须使用python3 file.py或python3 --version,我认为这是可以理解的。但是,如果更改原始python可执行文件的名称,pip将不再有效。您将无法再安装外部软件包和模块。
怎样才能解决这个问题?
您可以为名为python3.bat的Python3可执行文件创建别名。
可以直接从cmd调用.exe和.bat文件,而无需使用其扩展名。虽然两者都是正确的,但我们总是写python filename.py而不是python.exe filename.py。 .bat文件也可以这样做。
返回第一张图片,注意python.exe下面的python3.bat文件。这是我调用python3的方式而不重命名我原来的python可执行文件。
python3.bat
使用记事本或其他东西创建一个新文件并粘贴此%~dp0python %*
我不完全理解这是如何工作的,除了dp0基本上从同一目录内运行python并且%*将所有参数传递给python可执行文件。将此文件放在Python3安装目录中,希望您的问题能够得到解决。
python3基本上运行你的python3.bat文件,该文件又从其文件夹运行python.exe并将参数传递给它。
我希望这能解决你的问题。
您的路径中也应该有python3。您可以使用python3来运行脚本:
1python3
但要回答您的问题,您可以使用alias并将其更新为python。
1
2
3
4
5$ python --version
Python 2.7.6
$ alias python=python3
$ python --version
Python 3.6.4
虽然这个答案是正确的,但我认为直接运行python3而不是创建别名会更好。 如果用户将来希望python2,他/她可以直接运行python(这是默认行为)。
因此,答案的第一部分。:)
如果要运行Python 3.6,则执行python3.6。
否则,请检查which python到实际python可执行文件的符号链接。在我的系统上,它是
1/usr/bin/python
当我ls -la /usr/bin/python时,它给出了
1lrwxrwxrwx 42 user user 42 Aug 24 03:45 /usr/bin/python -> python2.7
如果您确实想要这样做,现在可以将旧的符号链接移动到某处:
1sudo mv /usr/bin/python /usr/bin/old_python
并创建一个新的符号链接:
1sudo ln -s /usr/bin/python3.6 /usr/bin/python
现在你应该得到类似的东西:
1
2$ python --version
Python 3.6.5
我不保证它不会破坏世界上的一切,特别是如果你有一些发行版有一个依赖于python下的特定python版本的包管理器。
这似乎在Linux Mint 18上运行良好。
如果Anaconda 3是系统中唯一的python3解释器,则可以在命令行中运行python3而不是python,它应该可以工作。
您可以更改PATH参数,反转两个解释器的位置。
为了使用python 3运行脚本,您可以使用
1python3
P.S。:这应该是评论,但我没有所需的声誉。 :)
不,这里很好。 但它并没有完全回答这个问题。 即如何将其更改为python 3.6
Upsy雏菊,看到你的回答我意识到你是对的,这更像是一种解决方法,但它仍然有效。