2024-04-25 13:27:52 发布
网友
我在Windows7上安装了Python2.6和Python3,并设置了环境变量:path = d:\python2.6。
path = d:\python2.6
当我在cmd中运行python时,它显示python版本是2.6,这是正确的!
python
但当我在bat文件中编写脚本并运行它时,显示的python版本是3.1。
这里怎么了?
bat文件中的脚本代码:
import sys print (sys.version)
如果您安装了这两个版本。
转到This PC -> Right-click -> Click on Properties -> Advanced System Settings.
This PC -> Right-click -> Click on Properties -> Advanced System Settings.
您将看到System Properties。从这里导航到"Advanced"选项卡->;单击Environment Variables。
System Properties
"Advanced"
Environment Variables
您将看到用户变量的上半部分和System variables的下半部分。
System variables
检查System Variables并双击Path(编辑路径)。
System Variables
Path
检查Python的路径(您希望运行Python 2.x或3.x),并将其移动到路径列表的顶部。
重新启动命令提示符,现在当您检查Python的版本时,它应该正确显示所需的版本。
最后一个在环境中注册的Python是默认的(我不记得安装程序中的确切措辞,但它是第一个选项)。有许多设置,所以要确保它们都是一致注册的,只需重新安装您想要的默认版本。
如果要安装另一个版本,但不希望将其作为默认版本,请在安装过程中禁用注册选项。
编辑(2012年5月19日)
从Python 3.3开始,Python安装程序安装Python Launcher for Windows。此程序(py.exe)与Python文件扩展名关联,并查找“shebang”注释以指定要运行的Python版本。这允许许多版本的Python共存,并允许Python脚本显式地指定要使用的版本(如果需要)。如果未指定,则默认为使用当前体系结构(x86或x64)的最新Python2.X版本。可以通过py.ini文件或PY_PYTHON环境变量自定义此默认值。有关详细信息,请参见docs。
py.exe
py.ini
PY_PYTHON
只要确保Python 3.3是最后一个在Windows中注册的Python。如果以后安装了其他版本的Python,请确保不是以便在环境中注册它们,因此启动程序将保持默认状态。
以下是如何从控制台检查启动程序是否正确注册的方法:
C:\>assoc .py .py=Python.File C:\>ftype Python.File Python.File="C:\Windows\py.exe" "%1" %*
上面,.py文件与^{类型相关联。Python.File的命令行是Python启动程序,它安装在Windows目录中,因为它总是在路径中。
.py
Python.File
要使关联正常工作,请使用script.py而不是“python script.py”从命令行运行脚本,否则将使用python而不是py。py.exe也可以使用开关运行以强制使用Python版本:
script.py
py
py -3 script.py # force latest Python 3.X version to be used.
另外,将.py;.pyw;.pyc;.pyo添加到PATHEXT环境变量,然后命令行就可以是script,没有扩展名。
.py;.pyw;.pyc;.pyo
PATHEXT
script
运行“py”命令将告诉您正在运行的版本。如果您当前运行3.x,并且需要切换到2.x,则需要使用开关'-2'
py -2
如果需要从python 2.x切换到python 3.x,则必须使用'-3'开关
py -3
如果希望将Python 3.x作为默认版本,则需要创建环境变量“PY_Python”,并将其值设置为3。
如果您安装了这两个版本。
转到
This PC -> Right-click -> Click on Properties -> Advanced System Settings.
您将看到
System Properties
。从这里导航到"Advanced"
选项卡->;单击Environment Variables
。您将看到用户变量的上半部分和
System variables
的下半部分。检查
System Variables
并双击Path
(编辑路径)。检查Python的路径(您希望运行Python 2.x或3.x),并将其移动到路径列表的顶部。
重新启动命令提示符,现在当您检查Python的版本时,它应该正确显示所需的版本。
最后一个在环境中注册的Python是默认的(我不记得安装程序中的确切措辞,但它是第一个选项)。有许多设置,所以要确保它们都是一致注册的,只需重新安装您想要的默认版本。
如果要安装另一个版本,但不希望将其作为默认版本,请在安装过程中禁用注册选项。
编辑(2012年5月19日)
从Python 3.3开始,Python安装程序安装Python Launcher for Windows。此程序(
py.exe
)与Python文件扩展名关联,并查找“shebang”注释以指定要运行的Python版本。这允许许多版本的Python共存,并允许Python脚本显式地指定要使用的版本(如果需要)。如果未指定,则默认为使用当前体系结构(x86或x64)的最新Python2.X版本。可以通过py.ini
文件或PY_PYTHON
环境变量自定义此默认值。有关详细信息,请参见docs。只要确保Python 3.3是最后一个在Windows中注册的Python。如果以后安装了其他版本的Python,请确保不是以便在环境中注册它们,因此启动程序将保持默认状态。
以下是如何从控制台检查启动程序是否正确注册的方法:
上面,类型相关联。
.py
文件与^{Python.File
的命令行是Python启动程序,它安装在Windows目录中,因为它总是在路径中。要使关联正常工作,请使用
script.py
而不是“python script.py”从命令行运行脚本,否则将使用python
而不是py
。py.exe
也可以使用开关运行以强制使用Python版本:另外,将
.py;.pyw;.pyc;.pyo
添加到PATHEXT
环境变量,然后命令行就可以是script
,没有扩展名。运行“py”命令将告诉您正在运行的版本。如果您当前运行3.x,并且需要切换到2.x,则需要使用开关'-2'
如果需要从python 2.x切换到python 3.x,则必须使用'-3'开关
如果希望将Python 3.x作为默认版本,则需要创建环境变量“PY_Python”,并将其值设置为3。
相关问题 更多 >
编程相关推荐