python27与python35并存
程序员文章站
2022-06-01 09:30:05
...
有时候python2与python3都需要的时候,例如opencv就只支持python27,那么,如何随时调用不同的python呢。
首先,下载两种python并安装,配置环境变量,然后在将D:\Python27中的python.exe 重命名为python2.exe就ok,在cmd中输入python2 就会进入python2.7的编译环境,输入python就会进入python3.5的编译环境。 使用pip下载其他安装包时,输入python2 -m pip install numpy即可。
python27在使用pip安装时,由于python2的str默认是ascii编码,和unicode编码冲突,就会报错: UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128) 而python3区分了unicode str 和 byte arrary,并且默认编码不再是 ascii,就不会报这个错误。想要使用python2.7通过pip安装,可以在python2的配置文件中直接指定编码方式,文件在D:\Python27\Lib\ntpath.py,在方法def join中加入两句:reload(sys);
sys.setdefaultencoding('gbk') 即可。
首先,下载两种python并安装,配置环境变量,然后在将D:\Python27中的python.exe 重命名为python2.exe就ok,在cmd中输入python2 就会进入python2.7的编译环境,输入python就会进入python3.5的编译环境。 使用pip下载其他安装包时,输入python2 -m pip install numpy即可。
python27在使用pip安装时,由于python2的str默认是ascii编码,和unicode编码冲突,就会报错: UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128) 而python3区分了unicode str 和 byte arrary,并且默认编码不再是 ascii,就不会报这个错误。想要使用python2.7通过pip安装,可以在python2的配置文件中直接指定编码方式,文件在D:\Python27\Lib\ntpath.py,在方法def join中加入两句:reload(sys);
sys.setdefaultencoding('gbk') 即可。