初学python的童鞋们到了开始编写一个工程或者项目的阶段时,肯定会有这样一个问题:如此多的modules怎么进行安装和管理。这篇文章将会和大家分享这个问题的解决方案。
这篇文章的目的(当然除了给我可怜的博客阅读量增加一些之外)不仅是给大家一个解决方法,也是让大家对于python环境管理有一个初级的了解,避免大家想我当初一样走那么多弯路。
python最常用的两个包管理工具是pip和conda。现在官网下载的python已经把pip工具内置了,conda需要自己安装,其实两个工具用起来差不多,建议最好不要混用就可以了。
不过其实混用了也没有什么关系 手动狗头
使用方法是在命令行输入
pip install xxx conda install xxx
用你要安装的module的名字替换xxx
如果你是Linux系统的话,注意区分一下python2和python3(pip默认是python2,pip3是python3)。因为Windows系统只能安装一个版本,所以没有这个问题。
pip用的pypi源特别特别的慢,所以安装module之前建议先把安装源改成国内的 我用的清华源:https://pypi.tuna.tsinghua.edu.cn/simple 更换方式很简单,在你的用户文件夹中新建一个文件夹命名为pip,在新建的文件夹中创建一个文件,命名为pip.ini(注意,要把后缀名显示打开,后缀名改为ini,否则新建的会是txt文件)。打开新建的文件,输入以下内容:
[global] timeout = 100 index-url = https://pypi.tuna.tsinghua.edu.cn/simple trusted-host = pypi.tuna.tsinghua.edu.cn
timeout设置成100是为了避免网络不好,当然你也可以设置得更大。你也可以去百度一下其他的镜像源添加。
到这里,使用pip安装和管理包就应该畅通无阻了。
看完上面你应该注意到了,如果你使用的是Windows系统就只能拥有一个python环境,那么如果在不同的工程中需要不同的环境怎么办呢?即使只用一个python版本,那安装的包也会越来越多以至于堆成垃圾场无法管理(就像你的宿舍从军训的整洁状态到现在的惨不忍睹一样)。
怎么解决这个问题呢?
Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。
anaconda的中文意思是水蚺(南美洲蟒蛇),麻辣鸡(Nicki Minaj妮琪·米娜)有首歌就叫Anaconda,表示像蟒蛇一样性感妖娆的身体。 看到anaconda这个词,你应该能反应到它和conda长得很像。那么它们俩有什么关系呢?
Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。 在数据分析中,你会用到很多第三方的包,而conda(包管理器)可以很好的帮助你在计算机上安装和管理这些包,包括安装、卸载和更新包。
简单的总结一下 ,anaconda是从conda的基础上开发出来的一个包含众多常用工具的发行版python,它可以帮你轻松的管理包和开发环境。
python的发行版其实还有很多个,之所以推荐这一个是因为我只用过这一个。
附上清华镜像站anaconda的下载地址:,下载最新版本就行了。 关于anaconda的安装就不多说了,Windows上图形用户界面的傻瓜安装相信大家不看教程都会。有一点需要注意:建议安装之前把python卸载了,并删除python的环境变量(怎么删除自行百度),安装anaconda时勾选添加环境变量。这样的话就可以在命令行使用anaconda的环境了,想想就非常酷炫呢 手动狗头 还有安装的时候弹出的命令框千万别手残把它关了(别问我是怎么知道的)。 安装完在命令行运行一下以下命令
conda --version
如果返回了版本,那么安装成功了,如下图 你可以再检查一下环境变量是不是添加了下面三个 根据安装路径的不同添加的路径也不同。
安装完成之后我们通过anaconda的图形界面来看看怎么管理安装源和环境。
跟pip一样,conda的默认源也慢的一批,安装好之后先更换一下国内源。
在开始菜单找到anaconda navigator并打开 开得比较慢 Loading… still Loading… Looaaaaadddddddiiiiiiiiiiiiiiiiiiiiiiiiiiiing… 终于打开了,界面是这样的 登进去发现,默认有一个base环境,这个环境是最高权限的(root)。 点开Channels按钮更改安装源 这里可以看到,我又用了几个清华的源(当然还有一个中科大的,不过这个中科大的源不能用,后来被我删除了)。 点击Add添加源。提供几个anaconda的国内源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/ # 设置搜索时显示通道地址 conda config --set show_channel_urls yes
到这里,你已经可以使用anaconda在base环境中安装包了。虽然anaconda navigator里提供了通过图形界面安装包,但我还是建议在命令行里执行pip install和conda install命令来安装,因为anaconda navigator这个软件实在是太慢了。
下面我们在anaconda navigator里熟悉一下环境管理界面。(我们只演示添加环境的基本操作,其他的操作相信你在这个傻瓜图形界面下都会使用。不会的话,,,还有度娘呢嘛) 打开Environments栏 这里能看见我已经建立了两个环境了。关于这个虚拟环境的好处,有点像Linux里的用户,使用同一台主机,但是各自的操作不会互相干扰。
点击Create那个加号来新建环境,输入环境名称并选择使用的python版本 就不点Create了,这软件新建一个环境实在是太慢了。。。
到这里,你已经新建了第一个python开发环境,下面可以开始安装需要的包和开始你的项目啦。
入过你觉得anaconda navigator运行太慢(我估计是个人都这么觉得),那么你也可以去了解一些anaconda命令行的操作。这里介绍几个命令行管理环境的基本命令 conda create --name env_name python=x.x 创建隔离的环境,用你的虚拟环境名称替换env_name
conda env list conda info -e 查看已有的独立python环境
activate env_name 激活环境
conda deactivate 退出当前环境
conda remove -n env_name --all 删除虚拟环境
conda remove --name env_name package_name 删除环境中某个包