你不知道的Python环境管理技巧

我们经常会遇到下面这样的场景:
同时在系统安装多个版本的 python,例如同时安装python2和python3
由于 a 项目和 b 项目使用的python包版本不一致,在同一个环境中无法保证两个项目同时都能正常运行
这时候,我们就该考虑使用虚拟环境了,虚拟环境可以为不同的项目创建相互独立的环境,互不影响
python 中的环境管理工具有很多,例如virtualenv、pyenv等,但个人更喜欢用conda。借助 conda,我们就能轻松的应对以上问题啦!
使用 conda 过程中,可以在命令行中使用-h参数,打开帮助文档
# 查看conda帮助文档 conda -h # 查看conda环境管理命令帮助文档 conda env -h
准备工作:配置 conda 镜像
默认的 conda 源下载速度比较慢,需要先将 conda 源设置为国内镜像
# 添加 anaconda 的 tuna 镜像 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ # 设置搜索时显示通道地址 conda config --set show_channel_urls yes
列出当前所有的环境
conda info -e
* 表示当前激活的环境
创建一个虚拟环境
conda create -n env_name python=3.6 pandas=0.21
以上命令创建了一个名为 env_name 的新环境的同时安装了 python3.6 和 pandas
激活虚拟环境
# windows系统 activate env_name # linux和mac系统 source activate env_name
删除虚拟环境
conda remove -n env_name
复制某个环境
如果环境依赖包太多,从头开始安装环境,会比较耗时,我们可以复制一个已有的环境,来创建新环境
conda create -n new_env_name --clone old_env_name
分享环境
通常我们会遇到以下场景:
更换电脑、更换系统后快速恢复原来的环境
代码写好以后,通常需要交给别人部署,需要告诉部署人员自己的环境和 python 依赖信息
在另外一台电脑运行我们的应用程序
这时候 conda 提供的分享环境功能就派上用场了,能够很方便的将我们的环境信息快速的分享出来,操作步骤如下:
首先我们需要先激活想分享的环境
# windows activate env_name # linux/mac source activate env_name
然后通过 export 命令导出环境配置
conda env export > environment.yml
导出的环境配置
打开environment.yml文件,我们就能看到上图中的环境信息
最后,通过以下命令就可以重新安装一个相同的环境
conda env create -f environment.yml
当然,conda 也可以像pip一样用于包管理的,这里就不详细展开了,感兴趣的同学可以通过conda -h命令了解详细用法,

突破技术推出新款无线充电器TU0010,支持8mm隔空充电
PLC数据通讯网关手机监控巨控GRM530 GRM300方案
工业以太网交换机如何应用在水泥厂
威马W6将支持AVP自动泊车功能 公共停车场也能用
中兴事件后,中国作为全球最大的半导体消费市场,芯片国产化进程迫在眉睫
你不知道的Python环境管理技巧
NFVi:用标准化虚拟化技术来支持多租户,为不同类型虚拟网元按需提供支持
16项被忽略的锂电池材料/设备技术
人工智能在安防领域可以爆发多大的能量
海康威视成为获得管理奖的9家企业之一
视频压缩越发常见,但压缩真的是越小越好吗?
小米6就长这样,MIUI9加持?
强化产品的防水能力,iPhone或彻底淘汰Lightning接口!
BMS应该选用什么样的电池模拟器
电源纹波的测量方法 纹波的抑制方法
云米涉足大家电智能冰箱领域,是敞开供应,还是炒作风浪
蔚来终于在李斌抢救下脱离ICU病房
目前Type-C接口为什么还没有实现全面普及
上下游供应链助力,ARM服务器阵营声势壮大
人机界面中的LCD控制驱动与接口设计