忙着查操作的同学,请直接往下看,看到有一列#######################那里就可以了。
在Python的机器学习,数据科学,网页前后端开发以及科学计算等工作中,经常遇到一个非常麻烦的问题就是如何去管理各种各样的package,尤其是不同的package之间是有可能互相冲突的。另外,某些包也会受到计算机本身软件或者硬件环境的影响。因此,在这种情况下,引入合适的包管理系统就十分重要了。
我们可以用化学的思想来解释这个问题。假如我们要做一个非常复杂的合成实验,实验工序极其繁琐。而实验中某些反应物(不同的package)可能相互之间会发生剧烈的化学反应,导致一些严重后果,比如爆炸等等。那么用特制的箱子(虚拟环境)把这些会“爆炸”的反应物(不同的package)隔离开来就是一个非常明智的选择。
能够用于处理这一问题的方法很多。包括:
1. Docker(这也是我最为推荐的一种技术)。在docker内进行开发,需要什么环境就把它从网上docker pull下来。这样做其实也是最容易的。但是并不是所有人都习惯命令行,尤其是初学者。我本人平时在工作中就偏向于使用docker进行开发。
2. virtualenv。号称python三大神器之一。原理和anaconda非常接近。但是使用没有anaconda那么方便。不过,好处是这东西体积非常小。只有10几个M。当然了,只要你掌握anaconda,再去学习virtualenv并不是难事。其实你可以完全把它当成一个缩小版的anaconda。
3. 就是我们今天要讲解的anaconda技术。这个技术,也是对初学者最为友好的技术。
下载:Anaconda可以在其官网进行下载。有适合win,Linux以及Mac的三个版本。分别进行下载就行。
Anaconda有两个最核心的部分,那便是anaconda navigator以及anaconda powershell prompt。你可以将前者理解为anaconda powershell prompt的鼠标控制版。打开anaconda,我们会发现,里头一样提供了环境的安装与卸载,不同工作环境的切换,各类包(package)的安装,升级与卸载等功能。这个事情用鼠标就可以完全实现,因此不再赘述。
#####################################################################################################
我们接下来就开始讲解如何使用powershell prompt。须知,这只是最为常用的一些命令。
首先,在开始菜单里打开anaconda,找到anaconda powershell prompt。直接点击打开它。
1. 如何显示本机已经安装的所有虚拟环境
使用conda env list就行
(base) PS C:\Users\wrm> condaenv list
#conda environments
base * F:\anaconda2
chain F:\anaconda2\envs\chain
dlpytorch F:\anaconda2\envs\dlpytorch
2. 如何创建新的虚拟环境
conda create -n env_name(env_name是你设定的环境的名字) python=2.7(这个是你设定的python的版本,如果没有选的话就默认是最新版)
你可以根据需要安装不同的python版本。有些时候某些特定的包,需要特定版本的python。这个你根据具体情况去安排。网上基本都可以查到资料。
3. 如何查看目前电脑中所安装的包都有哪些?
(base) PS C:\Users\wrm> pip list
Package Version
---------------------------------- --------
alabaster 0.7.12
anaconda-client 1.7.2
anaconda-navigator 1.9.7
anaconda-project 0.8.2
asn1crypto 0.24.0
astroid 2.2.5
astropy 3.1.2
atomicwrites 1.3.0
attrs 19.1.0
Babel 2.6.0
backcall 0.1.0
backports.os 0.1.1
backports.shutil-get-terminal-size 1.0.0
beautifulsoup4 4.7.1
bitarray 0.8.3
bkcharts 0.2
bleach 3.1.0
使用pip list或者conda list就可以很方便的查看目前电脑上都安里那些package。以及这些package的版本是什么。
4. 在不同的环境中切换。这个操作很重要。不同的环境可以安装不同的,相互冲突的一些package。比如,你可以把tensorflow和pytorch安装在两个不同的环境内。
conda activate(环境的名字)
比如你要去激活deeplearning这个环境,那么就用conda activate deeplearning就可以了。
5. 安装某个指定的package:
先切换到一个环境里。然后,pip install (这个包的名字)就行。
需要特别提醒的就是,在anaconda navigator之中,有些包是找不到的。但是用pip install几乎可以解决所有关于包安装的问题。如果发现用pip install无法安装,使用git clone命令基本也可以解决问题。如果用git clone(直接从github网站上下载)还解决不了问题,那几乎可以肯定,这个包没有安装和学习的必要了。
6. 清华开源镜像的使用
如果在国内,安装包的速度太慢,那么可以使用清华大学的开源镜像站。
https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
在这个上头有非常详细的,关于如何使用清华镜像的方法(国内还有中科大镜像和华科镜像可以使用,原理和清华镜像差不多)。
anaconda有数百个命令,大家可以参考的一些手册进行学习。当然了,以上6个命令可以说是80%的情况下,你使用anaconda会遇到的。