Anaconda 安装完成,在 bin 子目录下( $PREFIX/bin )可以看到该发行版本预装好的 conda、python、pip、jupyter,以及一些常用的工具。

Python环境管理

Anaconda 主要通过 conda 进行 python 的环境和包管理。Conda 的环境管理功能允许我们同时安装若干不同版本的 Python,并能自由切换。对于上述安装过程,假设我们采用的是 Python 3.6 对应的安装包,那么 Python 3.6 就是默认的环境(默认名字是 root,注意这个 root 不是超级管理员的意思)。

  • canda 创建一个新环境

conda create -n env_name  list of packages

# 创建一个 Python 2 的环境,同时安装 pandas 包
conda create -n py2 python=2.7 pandas

其中 -n 代表 name,env_name 是需要创建的环境名称,list of packages 则是列出在新环境中需要安装的工具包。canda 在安装包的过程会自动解决包的依赖,如上面的命令,canda 在新创建的 py2 环境中不仅安装了 pandas,还安装了 numpy 等一系列 packages 依赖。

  • conda 常用环境操作

# 创建一个名为 python27 的环境,指定 Python 版本是2.7(不用管是 2.7.x,conda 会为我们自动寻找 2.7.x 中的最新版本)
conda create --name python27 python=2.7

# 指定创建 python-2.7.13
conda create --name python27 python=2.7.13
 
# 安装好后,使用 activate 激活某个环境
activate python27           # for Windows
source activate python27    # for Linux & Mac
# 激活后,会发现 terminal 输入的地方多了 python27 的字样,实际上,此时系统做的事情就是把默认 3.6 环境从 PATH 中去除,再把 2.7 对应的命令加入 PATH
 
# 此时,再次输入
python --version
# 可以得到`Python 2.7.13 :: Anaconda, Inc.`,即系统已经切换到了 2.7.13 的环境
 
# 如果想返回默认的 python 3.6 环境(退出指定环境,返回默认),运行
deactivate python27          # for Windows
source deactivate python27   # for Linux & Mac
 
# 删除一个已有的环境
conda remove --name python27 --all

  • 环境导出与分享

当分享代码的时候,同时也需要将运行环境分享给大家,执行如下命令可以将当前环境下的 package 信息存入名为 environment 的 YAML 文件中。

# 显示所有的环境
conda env list(或者:conda info -e)

# 选择进入其中一个环境,root 表示进入默认环境
source activate root

# 保存当前环境信息
conda env export > environment.yaml

同样,当执行他人的代码时,也需要配置相应的环境。这时你可以用对方分享的 YAML 文件来创建一摸一样的运行环境。

conda env create -f environment.yaml

Python包管理

Anaconda 主要通过 conda 进行 python 的包管理,这部分功能与 pip 类似。

conda 的一些常用操作:

# 查看已安装的环境,当前被激活的环境会显示有一个星号或者括号
conda info --envs(或者 conda env list)

# 查看当前环境下已安装的包
conda list
 
# 查看某个指定环境的已安装包
conda list -n python27
 
# 查找某个 package (模糊查询)
conda search numpy
 
# 安装 package
conda install -n python27 numpy
# 如果不用 -n 指定环境名称,则被安装在当前活跃环境
# 也可以通过 -c 指定通过某个 channel 安装
 
# 更新 package
conda update -n python27 numpy
 
# 删除 package
conda remove -n python27 numpy

由于 conda 将 conda、python 等都视为 package,因此,完全可以使用 conda 来管理 conda 和 python 的版本,例如:

# 更新conda,保持conda最新
conda update conda
 
# 更新anaconda
conda update anaconda
 
# 更新python
conda update python
# 假设当前环境是 python 3.6, conda 会将 python 升级为 3.6.x 系列的当前最新版本

如果创建新的 python 环境,比如 2.7,运行 conda create -n python27 python=2.7 之后,conda 仅安装 python 2.7 相关的必须项,如 python, pip 等,如果希望该环境像默认环境那样,安装 anaconda 集合包,只需要:

# 进去环境后安装 anaconda 包集合
conda install anaconda
 
# 结合创建环境的命令,以上操作可以合并为
conda create -n python27 python=2.7 anaconda
# 也可以不用全部安装,根据需求安装自己需要的 package 即可

Conda 镜像

conda 的配置文件是 .condarc(一般保存在个人 home 目录下),该文件包含 conda 搜索包的来源(channels),代理以及环境目录等配置。默认情况下,.condarc 是不存在的,只有当用户第一运行 conda config 命令时才会生成。

Anaconda.org 的服务器在国外,安装 packages 有时候比较慢,因此我们可以在 conda 中加入清华 TUNA 镜像源中的 Anaconda 仓库镜像:

# 添加 Anaconda 的 TUNA 镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# TUNA的 help 中镜像地址加有引号,需要去掉

这时候看到新增的镜像 url 已经添加到 .condarc

$ cat ~/.condarc
channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - defaults

最后,我们设置搜索时显示通道地址:

conda config --set show_channel_urls yes

例子:conda 安装 cnvkit

conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda
conda install cnvkit

根据提示,conda 会自动把 cnvkit 的依赖及 cnvkit 安装完成:

至此,你已跨入 Anaconda 的大门,接下来就可以去选择一个喜欢的 python 版本去分析了!

本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

Anaconda入门使用指南(二)的更多相关文章

  1. Anaconda入门使用指南

    打算学习 Python 来做数据分析的你,是不是在开始时就遇到各种麻烦呢? 到底该装 Python2 呢还是 Python3 ? 为什么安装 Python 时总是出错? 怎么安装工具包呢? 为什么提示 ...

  2. 致Python初学者:Anaconda入门使用指南

    http://python.jobbole.com/87522/ Anaconda使用总结 pasting

  3. elasticsearch.net search入门使用指南中文版(翻译)

    elasticsearch.net search入门使用指南中文版,elasticsearch.Net是一个非常底层且灵活的客户端,它不在意你如何的构建自己的请求和响应.它非常抽象,因此所有的elas ...

  4. elasticsearch.net search入门使用指南中文版

    原文:http://edu.dmeiyang.com/book/nestusing.html elasticsearch.net为什么会有两个客户端? Elasticsearch.Net是一个非常底层 ...

  5. WPF入门教程系列二十三——DataGrid示例(三)

    DataGrid的选择模式 默认情况下,DataGrid 的选择模式为“全行选择”,并且可以同时选择多行(如下图所示),我们可以通过SelectionMode 和SelectionUnit 属性来修改 ...

  6. WCF入门教程(二)如何创建WCF服务

    WCF入门教程(二)从零做起-创建WCF服务 通过最基本的操作看到最简单的WCF如何实现的.这是VS的SDK默认创建的样本 1.创建WCF服务库 2.看其生成结构 1)IService1.cs(协议) ...

  7. iOS开发-UI 从入门到精通(二)

    iOS开发-UI 从入门到精通(二)是对 iOS开发-UI 从入门到精通(一)知识点的巩固,主要以习题练习为主,增强实战经验,为以后做开发打下坚实的基础! ※开发环境和注意事项: 1.前期iOS-UI ...

  8. Docker入门教程(二)命令

    Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker ...

  9. 无废话ExtJs 入门教程十二[下拉列表联动:Combobox_Two]

    无废话ExtJs 入门教程十二[下拉列表联动:Combobox_Two] extjs技术交流,欢迎加群(201926085) 不管是几级下拉列表的联动实现本质上都是根据某个下拉列表的变化,去动态加载其 ...

  10. P6 EPPM R16.1安装与配置指南(二)

    P6 EPPM R16.1安装与配置指南(一) http://www.cnblogs.com/endv/p/5634620.html P6 EPPM R16.1安装与配置指南(二) 环境变量配置 新建 ...

随机推荐

  1. Vue-Router 路由与配置

    ​现在的很多应用都流行SPA应用(singe page application) . 传统的项目大多使用多页面结构,需要切换内容的时候我们往往会进行单个html文件的跳转,这个时候因受到网络.性能的影 ...

  2. day09-拦截器&文件上传

    拦截器&文件上传 1.拦截器-Interceptor 1.1拦截器概念 拦截器 拦截器(Interceptor):是一种动态拦截方法调用的机制,在SpringMVC中动态拦截控制器方法的执行. ...

  3. MySQL 主从复制的问题及解决方案

    更多内容,前往 IT-BLOG 复制功能是构建 MySQL 的大规模.高性能的基础,也就是所谓的 "水平扩展" 架构.我们可以通过为服务器配置一个或多个备库.同时,复制也是高可用性 ...

  4. 酷狗的kgma文件,居然包含两个版本

    酷狗的kgma文件,居然可以包含两个版本,看看两首歌的歌曲信息. 歌曲信息中可以看到两首格式.时间.大小都是不一样的,但是这两首歌曲的本地文件地址都指向 F:\KuGou\KugouMusic\丸子呦 ...

  5. 2020寒假学习笔记14------Python基础语法学习(三)

    今天学习了Python的基础语法,其中学的内容有: 比较运算符.逻辑运算符.同一运算符.整数缓存问题.基本运算符.复合复制运算符.运算符优先级问题.字符串基本特点.字符串的编码.空字符串和len()函 ...

  6. window计时器函数

    // 定时器: // 计时器 // 开启:setInterval() // 参数1:回调函数 // 参数2:毫秒数 // 功能:每个指定的毫秒数执行一次回调函数 demo: var t = setIn ...

  7. Thinkpad T14升级Windows11ver22h2失败问题解决小记

    背景 手头的ThinkPad在近一年的时间里每次升级Windows 11的22h2版本每次都会报错,具体有以下几种情况: 更新过程中无问题,重启后黑屏更新过程中会卡在26%左右,然后蓝屏报KENERA ...

  8. LeetCode刷题笔记 - 2022

    这篇博客集中整理在LeetCode的刷题记录,方便查阅 258. 各位相加 - 力扣(LeetCode) (leetcode-cn.com) 代码 class Solution { public: i ...

  9. ACM-位运算符-判断奇偶

    同样一个问题,位运算可以提高程序的运行效率. 下面讲一下关于奇偶性的判断. 常规方法 public static boolean isOdd(int i){ ​ return i % 2 != 0; ...

  10. 全网最详细中英文ChatGPT-GPT-4示例文档-快速创意生成从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)

    目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示 ...