我从v3.7开始学习Python,现在v3.8退出了。
我已经下载了3.8.0,并将其安装到python38
文件夹旁边的新python37
目录中。路径已更新,现在同时包含python v3.7和v3.8。
py
?如果我打开一个新的命令窗口或 Git Bash 窗口,则python --version
已更新,但py --version
未更新,我该如何更新py
指向最新版本?
关于虚拟环境还有其他考虑因素吗?
他们应该继续指出使用它们构建的python版本-当venv处于活动状态时,python
和py
都是正确的吗?
注意: py
是自v3.3起Python附带的命令行python启动器工具
答案 0 :(得分:0)
搜索了一会儿之后,我至少偶然发现了py
更新部分的答案。
py
命令是Python随附的可执行文件,从Python v3.3开始。它称为"Python Launcher" in the official Python documentation。
Python Launcher上的文档非常完善,但是为了回答我的原始问题,我已将环境变量PY_PYTHON
设置为3.7
,以将py
的默认Python版本声明为使用。
我能够通过将其更新为3.8
并重新启动任何使用终端访问py / python的终端和程序来解决该问题。还有其他Python环境变量,所以我全部更新了它们:
更新:我能够完全删除PYTHONHOME
和PYTHONPATH
变量,而只需使用PY_PYTHON
来控制默认版本。您可以详细了解这些变量in the Environment Variables section of the Python Documentation
PY_PYTHON
设置为3.8
PYTHONHOME
设置到我的新Python38目录PYTHONPATH
添加了新的python38
和python38/scripts
目录。注意::更新环境变量后,您将需要重新启动某些程序,而其他程序可能需要注销或完全重新启动(Windows上的VS Code确实如此)。
py
命令和版本的更多信息您可以使用py
获取基本的py --help
命令列表:
$ py --help
Python Launcher for Windows Version 3.8.150.1013
usage:
C:\WINDOWS\py.exe [launcher-args] [python-args] script [script-args]
Launcher arguments:
-2 : Launch the latest Python 2.x version
-3 : Launch the latest Python 3.x version
-X.Y : Launch the specified Python version
The above all default to 64 bit if a matching 64 bit python is present.
-X.Y-32: Launch the specified 32bit Python version
-X-32 : Launch the latest 32bit Python X version
-X.Y-64: Launch the specified 64bit Python version
-X-64 : Launch the latest 64bit Python X version
-0 --list : List the available pythons
-0p --list-paths : List with paths
上面用于启动特定版本的python的版本字符串可以放在PY_PYTHON
环境变量中。例如,如果您只想要最新的Python3,则使用3
;对于特定的Python3,请使用3.8
;对于32位版本,请使用3.8-32
,等等。>