我已经设置了环境变量,以便在终端中使用python命令时运行的版本是python 3.6,但是当我从终端运行python脚本时,它将使用python 2.7。
我在路径中包含一个名为MyScripts的文件夹,以便我可以直接从终端运行这些脚本,而无需指定路径。
仅运行python
即可显示Python 3.6.4
但是执行脚本显示2.7.14。这是脚本 v27.py
import sys
print(sys.version)
print(sys.executable)
这是输出
答案 0 :(得分:3)
由于您在运行Python脚本(作为可执行文件)时未在命令提示符下指定python
,因此它将不会使用在环境变量中设置的python路径。而是,Windows将运行与此扩展关联的默认程序。您可以在 控制面板\所有控制面板项目\默认程序\设置关联
您可以转到ControlPanel更改默认程序,也可以在cmd
中运行以下命令(需要提升的权限才能执行此操作)
C:\> assoc .py=Python
C:\> ftype Python="C:\Users\asleb\AppData\Local\Programs\Python\Python36-32\python.exe" "%1" %*
此外,如果您想不带扩展名运行(如v27
而不是v27.py
),则需要将.py
添加到PATHEXT环境变量中。
答案 1 :(得分:0)
大多数OS系统使用python2.7作为默认python。根据您的设置,您必须调用python3
或调用/path/to/python3exacutable/python
来调用所需的版本。
如果您的项目允许,请查看anaconda作为便捷的python版本控制解决方案。