0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

lviY_AI_shequ 来源:数据科学杂谈 2020-05-11 18:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

我们经常会遇到下面这样的场景:

同时在系统安装多个版本的 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命令了解详细用法,

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • python
    +关注

    关注

    57

    文章

    4856

    浏览量

    89551
  • 镜像
    +关注

    关注

    0

    文章

    178

    浏览量

    11543

原文标题:你不知道的Python环境管理技巧,超级好用!

文章出处:【微信号:AI_shequ,微信公众号:人工智能爱好者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    FLIR荣获ISO9001质量管理与ISO14001环境管理体系认证

    Flir正式通过ISO9001质量管理体系认证 与ISO14001环境管理体系认证! 这是我们在产品质量与环境责任方面持续努力的成果 更是对客户承诺的有力背书
    的头像 发表于 12-02 11:42 412次阅读

    不仅测量,更能控制,看看如何用宏集COMET设备实现智能化仓储环境管理

    当你想到环境监测,是否还停留在“只看数据”的阶段?今天我们带来一个来自捷克的实战案例:知名食品制造商TOPNATUR借助宏集COMET的测控设备和云平台,从温湿度监测迈向环境控制,实现智能化仓储环境管理
    的头像 发表于 07-25 14:08 295次阅读
    不仅测量,更能控制,看看如何用宏集COMET设备实现智能化仓储<b class='flag-5'>环境管理</b>

    编译错误: error: unrecognizable insn,不知道原因,请教!

    用start_gui.exe生成的代码,再用SEGGER Embedded打开,编译有错,不知道是什么原因,请教各位大佬?
    发表于 06-23 14:45

    不知道怎么画原理图了

    时,这样的问题,也有这么多?!1、电阻的表示方法是第一种,还是第二种?中间是方框还是折线?方框做多大?现场一片混乱立马分成N派。普通的电阻都这样,这么多种电阻现
    的头像 发表于 04-30 18:40 799次阅读
    <b class='flag-5'>不知道</b>怎么画原理图了

    ​如何在虚拟环境中使用 Python,提升的开发体验~

    RaspberryPiOS预装了Python需要使用其虚拟环境来安装包。今天出版的最新一期《TheMagPi》杂志刊登了我们文档负责人NateContino撰写的一篇实用教程,帮助你入门
    的头像 发表于 03-25 09:34 627次阅读
    ​如何在虚拟<b class='flag-5'>环境</b>中使用 <b class='flag-5'>Python</b>,提升<b class='flag-5'>你</b>的开发体验~

    DLP3010在设置时不知道如图所示的input和output指什么,这样的img文件从哪得到?

    目的是更改开机图片,在设置时不知道如图所示的input和output指什么,这样的img文件从哪得到? 以下是各页设置情况,GUI使用的是3.1.0.3,EVM是2.2.0.6
    发表于 02-25 07:23

    Lansweeper:强化网络安全与资产管理

    使用 Lansweeper 全面了解您的 IT 资产清单 保护任何东西的第一步是知道拥有什么 全可见性 发现您甚至不知道的资产并消除盲点。 风险缓解 通过审计预防措施预测潜在的网络安全攻击。 威胁
    的头像 发表于 02-19 13:59 1007次阅读

    用于钻井测井和采矿的新工具,不知道它吗?

    在定向钻井、石油测井与采矿等领域,方向与姿态的精准把控是作业成功的核心。复杂的工业环境,让传统传感器束手无策。一种新型寻北仪以其独特的优势,已成为技术革新工具。今天我们来深入探讨为什么它对这些领域作业来说不可或缺。
    的头像 发表于 02-10 14:52 771次阅读
    用于钻井测井和采矿的新工具,<b class='flag-5'>你</b>还<b class='flag-5'>不知道</b>它吗?

    防水浴霸无线遥控开关设计方案——不知道就OUT了

    传统无线智能开关的按钮都在外面,当需要在浴室等潮湿环境使用时,其自身的防水性能较差,因此水分渗入开关内部之后,容易造成控制故障的问题。浴霸无线遥控开关防水结构设计一般是将普通的86型开关外壳上面加一
    的头像 发表于 02-05 14:33 972次阅读

    DAC8832 输出偏移了0.8V,不知道各位有没有碰到过类似问题?

    DAC8832 之前也用过,一直没有问题。今天在调板子的时候发现输出不对了,0x0000原本输出-2.5,现在变成了-3.3V多,0xFFFF应该是2.5V,现在变成了1.7V,也就是输出往左偏了0.8V。电源电压 参考电压都没问题,是不是反馈的运放或者DAC坏了 不知道各位有没有碰到过类似问题?
    发表于 01-21 08:53

    ADS805E测量跳跃幅度很大,不知道是为什么?

    我按照手册上直流耦合连接电路,输入是1.5V~3.5V范围,SEL与VREF相连,用430定时器输出转换时钟,结果测量直流时,AD测量结果在几个值之间跳跃,跳跃幅度很大,不知道是为什么,引脚电压控制用3.3V。
    发表于 01-21 07:46

    测的值不定然后开始减小直到为0,不知道怎么回事?

    ADS1247对寄存器可读可写 可是配置完02这个地址的时(写0x30)在vrefout测不到2.048v,测的值不定然后开始减小直到为0,不知道怎么回事?
    发表于 01-21 06:27

    想用AMC1203做电流采样,用AMC1210做SINC滤波,不知道这样可不可行?

    想用AMC1203做电流采样,用AMC1210做SINC滤波,不知道这样可不可行? 网上有帖子说AMC1210有问题,你们不推荐采用AMC1210做SINC滤波,而是推荐采用CPLD做SINC滤波,不知道是不是真的?
    发表于 01-14 07:22

    DAC7714应用于MCBSP模块,clk与cs都是模块内部产生的,LD信号不知道怎么给出?

    DAC7714应用于MCBSP模块,clk与cs都是模块内部产生的,但是LD信号不知道怎么给出,才能与cs同步,符合datasheet的时序。 我本身是用判断XRDY标志位是否为1来决定LD信号,但是LD信号总是与CS信号有错位,转换错误.希望哪位大神指导一下,谢谢。 。
    发表于 12-19 08:09

    有关UV固化不知道的技术细节

    UV固化技术中,光引发剂吸收UV光产生活性自由基触发聚合反应,包括链引发、增长、终止和交联。反应速率受UV光强、光引发剂浓度、单体类型等因素影响,UV固化技术具有快速固化特性。
    的头像 发表于 12-06 09:33 1445次阅读