利⽤anaconda保证64位和32位的python共存
背景
喵哥想在MFC中调⽤python脚本,在原来的代码中包含⼀个只⽀持x86的库⽂件(超级核⼼的⽂件),原本安装的python是x64的,强⾏运⾏程序会出现python头⽂件⾥的函数⽆法解析的错误。考虑到anaconda可以⽅便的管理python版本,所以采⽤anaconda来安装32位的python。
Anaconda的⼀些命令
1.查看当前⼯作平台:conda info
(base) C:\Users\Catlin Cao>conda info
active environment : base
active env location : F:\Anaconda3
shell level : 1
user config file : C:\Users\Catlin Cao\.condarc
populated config files : C:\Users\Catlin Cao\.condarc
conda version : 4.5.11
conda-build version : 3.15.1
python version : 3.7.0.final.0
base environment : F:\Anaconda3 (writable)
channel URLs : repo.anaconda/pkgs/main/win-32
repo.anaconda/pkgs/main/noarch
repo.anaconda/pkgs/free/win-32
repo.anaconda/pkgs/free/noarch
repo.anaconda/pkgs/r/win-32
repo.anaconda/pkgs/r/noarch
repo.anaconda/pkgs/pro/win-32
repo.anaconda/pkgs/pro/noarch
repo.anaconda/pkgs/msys2/win-32
repo.anaconda/pkgs/msys2/noarch
package cache : F:\Anaconda3\pkgs32
C:\Users\Catlin Cao\AppData\Local\conda\conda\pkgs32
envs directories : F:\Anaconda3\envs
C:\Users\Catlin Cao\AppData\Local\conda\conda\envs
numpy库需要安装吗C:\Users\Catlin Cao\.conda\envs
platform : win-32
user-agent : conda/4.5.11 requests/2.19.1 CPython/3.7.0 Windows/10 Windows/10.0.17134
administrator : False
netrc file : None
offline mode : False
可见此时是32位平台。
2.切换64位和32位:set CONDA_FORCE_32BIT=1是切换到32位;set CONDA_FORCE_32BIT= 是切换到64位。
需要注意的是,这样切换环境对于已经安装的python没有任何影响,即原先是64位的python,现在还是64位,所以需要切换到32位后再安装python,并且安装需要在prompt下进⾏,在navigator⾥新建的python默认是64位的。
3.安装python:conda create -n env_name python=3.6,如果需要安装⼀些包,只需要在name后加上对应的包名称。conda create -n env_name numpy matplotlib python=3.6。
4.切换环境:conda activate env_name,conda deactivate env_name。
5.移除环境:conda remove -n env_name --all
6.安装包:activate env_name,conda install pandas。安装anaconda发⾏版的所有包:conda install anaconda,但是这样会在所有环境都执⾏这样的操作,所以需要指定安装环境:conda install -n env_name pandas
以上的操作都是在Anaconda Prompt⾥,其实⽤Anaconda图形界⾯(Navigator)安装python会更加直观,但是需要注意的是,⽆论你是否在Prompt⾥设置了32位的环境,⽤Navigator安装的python都是64位的,⼤家可以试⼀下,有异议欢迎留⾔交流。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。