利用anaconda保证64位和32位的python共存

yipeiwu_com5年前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 : https://repo.anaconda.com/pkgs/main/win-32
       https://repo.anaconda.com/pkgs/main/noarch
       https://repo.anaconda.com/pkgs/free/win-32
       https://repo.anaconda.com/pkgs/free/noarch
       https://repo.anaconda.com/pkgs/r/win-32
       https://repo.anaconda.com/pkgs/r/noarch
       https://repo.anaconda.com/pkgs/pro/win-32
       https://repo.anaconda.com/pkgs/pro/noarch
       https://repo.anaconda.com/pkgs/msys2/win-32
       https://repo.anaconda.com/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
       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位的,大家可以试一下,有异议欢迎留言交流。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用zip合并相邻列表项的方法示例

本文实例讲述了Python使用zip合并相邻列表项的方法。分享给大家供大家参考,具体如下: 1》使用zip()函数和iter()函数,来合并相邻的列表项 >>> x...

面向对象学习之pygame坦克大战

经过一天多的奋战,查阅文献,参考别人的代码等等,完成了第一个面向对象的小项目,也深深体会到面向对象编程思想在游戏编程中所扮演的角色。 附上代码,参考了别人的代码,以及对他们代码的完善,又...

python 中的列表生成式、生成器表达式、模块导入

5.16 列表生成式 l=[] for i in range(100): l.append('egg%s' %i) print(l) ​ l=['egg%s' %i...

Python 执行字符串表达式函数(eval exec execfile)

仔细研读后学习了三个函数: eval:计算字符串中的表达式 exec:执行字符串中的语句 execfile:用来执行一个文件 需注意的是,exec是一个语句,而eval()和execfi...

用Python实现筛选文件脚本的方法

在做项目时遇到需要标记数据集里面的若干图片数据,作为程序员,为避免手动一张一张的筛选,所以写了这个Python脚本实现。 Python脚本如下: # from PIL import...