前言
之前在自己电脑上写代码、跑程序用的都是 Python3,基本不会出现必须用 Python2 的情况。然而,最近 clone 了别人的项目下来学习,发现必须用 Py2 才能正常运行,否则不断报错,而且是外部模块报的错误,调试起来实在无力,遂决定在电脑上同时装上 Py2 和Py3,顺便把过程记录下来。
安装Python2&3
分别下载 Python2 和 Python3 安装包,安装顺序没有要求,安装时选上加入
系统变量中的Path选项。都安装好后检查系统变量中的Path中有没加入以下内容;没有加入,就手动添加,记得每一项都必须用;分隔1234C:\Program Files (x86)\Python27\C:\Program Files (x86)\Python27\Scripts #此目录暂时没有,安装完pip后才生成C:\Program Files (x86)\Python34\C:\Program Files (x86)\Python34\Scripts
打开 Python2 和 Python3 的安装目录,确保
PythonX\目录下没有同名的python.exe文件,可以参考以下修改Python27\
12python.exe --> python2.exepythonw.exe --> pythonw2.exePython34\
1234python.exe --> 不用修改pythonw.exe --> 不用修改当然你也可以相应修改为 python3.exe 和 pythonw3.exe,因为我一般用 Python3,为了方便就保留默认这样修改后,在
cmd中就可以直接用python2运行python2,用python运行python3了。
安装pip和easy_install
Python3 安装包中已经包含安装 pip 的选项了,安装时选上就能自动安装好
pip和easy_install,它们的运行程序保存目录在PythonX\Scripts\,如果安装时忘了选上,可以参照下面 Python2 安装 pip 的方法1python get-pip.pyPython2 安装包没有包含安装 pip 的选项,可以在打开 https://bootstrap.pypa.io/get-pip.py将程序右键另存为
get-pip.py文件,记得使用管理员身份运行1python2 get-pip.py最后,打开
Python2X\Scripts\和Python3X\Scripts\目录,确保两个目录下没有同名的pip.exe和easy_install.exe文件,可以参考以下修改Python27\Scripts\
12pip.exe --> pip2.exeeasy_install.exe --> easy_install2.exePython34\Scripts\
1234pip.exe --> 不用修改easy_install.exe --> 不用修改同上,你也可以相应修改为 pip3.exe 和 easy_install3.exe,因为我一般用 Python3,为了方便就保留默认这样修改后,在
cmd中就可以直接用pip2运行python2中的pip,用pip运行python3中的pip;easy_install同理。
安装虚拟环境virtualenv
Python3
1pip install virtualenvPython2
1pip2 install virtualenv因为默认安装好的
virtualenv程序文件名为virtualenv.exe,显然 Python2 和 Python3 不能有同名的virtualenv.exe,于是可以参考以下修改12345Python2:virtualenv.exe --> virtualenv2.exePython3:virtualenv.exe --> 不用修改
小结
关键的步骤是系统变量中设置的目录下不能有同名的文件,否则系统怎么知道你要调用哪个文件,改掉同名的文件就行了:)
经过上面的设置,就可以在使用命令行的时候方便的区分 Python2 还是 Python3 了,有些项目只支持 Python2,可以创建 Python2 的虚拟环境,方便本地调试,更重要的是可以少踩一些坑(╯‵□′)╯︵┻━┻