conda常用命令和基础知识整理
Anaconda虚拟环境
Anaconda的好处:
1、针对不同的程序可能需要不同的python环境和包,Anaconda可以帮我们虚拟出多个python环境,就像一个个容器一样,我们可以在不同python环境自由切换。
2、Anaconda可以帮我们管理这些虚拟环境的包,我们可以针对单个虚拟环境进行个性化的包安装和配置。
3、当我们需要安装某个新的与其他包存在依赖包时,如果我们用pip命令安装,则安装了这个包之后,还需要手动一个个安装它依赖的包。但是如果用conda命令就不同了,只需要输入“conda install pkg-name”,conda会自动搜索安装与这个包相关的包。
4、我们可以轻松的用已有的虚拟环境克隆一个新的虚拟环境出来。
Anaconda常用命令
查看版本
conda --version:查看conda版本
conda info :查看conda信息
虚拟环境管理和创建
conda env list // 列出conda管理的所有环境
conda create --name your_env_name //创建虚拟环境
conda create -n your_env_name python=3 // 创建指定python版本的虚拟环境
conda create --name new_env_name --clone old_env_name //复制某个环境conda env export > environment.yaml // 导出当前环境的包信息
conda env create -f environment.yaml // 用上步导出的配置文件创建新的相同的虚拟环境
create操作只安装必要的pkg,如python,pip等,其他第三方库基本没有,如果需要安装anaconda集合,可以:
# 在当前环境下安装anaconda包集合
conda install anaconda# 结合创建环境的命令,以上操作可以合并为
conda create -n python35 python=3.5 anaconda
虚拟环境删除
conda remove -n your_env_name --all // 删除某个虚拟环境及下属所有包
虚拟环境切换
source activate // 切换到base环境
source activate learn // 切换到learn环境
source deactivate //关闭当前虚拟环境
注:win10下运行时,若提示不认识source命令,可去掉source,直接用activate和deactivate
包管理
在某个虚拟环境中单独进行包管理时用conda命令,用pip命令会对所有环境的包都修改了。
conda list // 列出当前环境的所有包
conda list -n your_env_name //列举一个非当前活跃环境下的所有包
查找:
conda list | grep package-name //查找某个包
conda search package-name //查找包
安装:
conda install package-name //为当前环境安装包conda install -n env_name package_name //为指定环境安装某个包
卸载:
conda remove package-name //卸载包
更新:
conda update package-name //更新某个包
conda update --all //更新所有包
指定channels更新包:
conda install hdf5=1.10.5 -c conda-forge
-c表示–channel,表示包hdf5包被指定从conda-forge这个channel下载。目前anaconda源中hdf5最高版本为1.10.4,因此要指定为conda-forge源。
为某个虚拟环境安装相应包
语法:
conda install -n your_env_name [package]
例子:
conda install -n python363 joblib #给名为python363的虚拟环境安装joblib包
阻止conda自己更新(这个我觉得太有必要了!)
conda config --set auto_update_conda False
channel管理
conda换源
conda的base环境和其他虚拟环境的源是同步的,在虚拟环境对源进行的操作,base环境也会更新。
C:\Users\lmkhd下的.condarc文件
即为源的配置文件,所有环境公用。
conda添加channel(下载渠道)的命令:
conda config --add channels conda-forge
注:添加时要写
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
注意最后加一个斜杠
添加完所有的channel后运行下面这句话:
conda config --set show_channel_urls yes
意思是从channel中安装包时显示channel的url,这样就可以知道包的安装来源了。
conda移除channel(下载渠道)的命令:
conda config --remove channels conda-forge
查看channels的信息
conda config --show channels
查看channel优先级顺序:
conda config --get channels
在输出信息中,# lowest priority表示最低优先级,# highest priority表示最高优先级,从低到高顺序排列。
Tips:
- 当我们用conda list查看某个环境里安装的包时,可以看到包的两种来源:pypi和tsinghua源,源为pypi表示当时用pip3命令安装的,删除也要用pip3,用conda命令删除可能找不到这个包,导致删除失败。
- 源为pypi的包可以卸载后用conda命令安装,改为tsinghua源。
- 用conda或者pip3命令卸载某个包时,卸载后要用conda list查看是否卸载成功,有时候显示卸载成功了,但是用conda list查看时可能还会存在
- conda环境中的包的源如果是pypi和tsinghua两种混合存在的,可能会引发一些奇怪的错误,这是由于两种源的包可能不兼容导致的(因为包和包之间会存在依赖性)。解决方法是卸载后,用conda命令重装。例如安装tensorflow,tensorflow包和protobuf、h5py、tensorboard、werkzeug这几个包都有紧密联系,如果这些包来自不同的源,就有可能会报各种奇怪的错误。这时候只能将这些包都卸载干净(用conda和pip3命令反复卸载,最后再确认是否卸载干净),然后重新用conda命令安装tf。
参考:
[命令]使用的conda命令大全
Conda常用命令整理
anaconda的基本使用方法
Anaconda完全入门指南
conda常用命令和基础知识整理相关推荐
- python常用变量名_python基础知识整理
Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...
- Kali Linux渗透基础知识整理(四):维持访问
Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...
- 使用Aspose.Cells的基础知识整理
使用Aspose.Cells的基础知识整理 转自 http://www.cnblogs.com/kenblove/archive/2009/01/07/1371104.html 这两天用Aspose. ...
- mysql中需要提交的操作_MySQL常用操作及基础知识
原标题:MySQL常用操作及基础知识 1.启动和关闭mysql服务器: service mysql start service mysql stop 2.重启MySQL服务: service mysq ...
- centos7创建asm磁盘_Oracle ASM 磁盘组基础知识整理(收藏版)
为什么要写这么一篇基础知识呢?还是有那么一点点原因的,不是胡编乱造还真是有真实存在的事件的,前两周里因一套生产环境数据库磁盘不足无法对其进行表空间扩容,需要向存储岗申请存储资源,当存储岗划好资源加完存 ...
- Web前端基础知识整理
1. 前端基础知识 文件分类 XML(扩展标记语言) 装载有格式的数据信息,用于各个框架和技术的配置文件描述 特点: 扩展名为.xml 内容区分大小写 标签要成对出现,形成容器,只能有一个 标签按正确 ...
- 矩阵论(零):线性代数基础知识整理(1)——逆矩阵、(广义)初等变换、满秩分解
矩阵论专栏:专栏(文章按照顺序排序) 线性代数是矩阵论的先修课程,本篇博客整理线性代数的基础理论知识,为矩阵论的学习做准备.限于篇幅,梳理的重点将在定理和结论上(只给出部分必要的定义),对最基础的概念 ...
- CSP-S初赛基础知识整理
文章目录 CSP-S初赛基础知识整理 RT [1]计算机基础知识 计算机系统的组成 计算机硬件的五大组成 [1-2]进制及其转化和运算 [1-2]二进制 [1]基本定义及应用 [1]基本运算 [2]位 ...
- jQuery基础知识整理
jQuery基础知识整理 jQuery简介 什么是jQuery(了解) jQuery简化JS代码 jQuery的核心思想:"写的更少,但做的更多"(write less,do mo ...
- 矩阵论(零):线性代数基础知识整理(5)——特征值与相似
矩阵论专栏:专栏(文章按照顺序排序) 本篇博客的上篇是矩阵论(零):线性代数基础知识整理(4)--线性空间与线性变换,梳理了线性空间与线性变换的相关内容.本文主要整理矩阵的特征值与相似的相关内容. 方 ...
最新文章
- TileList自动滚动指定单元格,可视部分
- 强烈推荐10个新媒体运营必备工具,极大提高工作效率
- Python_List对象内置方法详解
- c++98不支持set初始化列表
- 安全多方计算新突破!阿里首次实现“公开可验证” 的安全方案
- [转]如何完美应对面试
- 【有容云案例系列】基于Jenkins和Kubernetes的CI工作流
- Sentinel流控规则简介_分布式系统集群限流_线程数隔离_削峰填谷_流量控制_速率控制_服务熔断_服务降级---微服务升级_SpringCloud Alibaba工作笔记0032
- 面经 |算法工程师面试题汇总分享
- 以终端模式连接远程桌面
- Android的ADT的安装
- BeanNotOfRequiredTypeException,Bean named ‘xx‘ is excepted to be of type ‘xx‘ but was ‘$Proxy30 ‘
- PCB生成BOM表、网络表添加logo并且输出为Gerber文件
- python写剧情文字游戏_零基础学Python——制作简单文字游戏
- 360 vs QQ 有意思的大战
- 高德地图定位 地图比例缩放
- iOS-监听UITextView、UITextField键盘删除键
- 【JS基础】e.preventDefault() 阻止默认操作
- github在线修改文章
- 跨越40年的甲骨文公司,正在成为年轻一代的时尚选择