Anaconda的简要介绍
- 那就先查查Anaconda到底是什么
致Python初学者:Anaconda入门使用指南
啥是Anaconda呢?
Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项。
这里面包括了conda这个管理系统
conda 是开源包(packages)和虚拟环境(environment)的管理系统。
packages 管理: 可以使用 conda 来安装、更新 、卸载工具包 ,并且它更关注于数据科学相关的工具包。在安装 anaconda 时就预先集成了像 Numpy、Scipy、 pandas、Scikit-learn 这些在数据分析中常用的包。另外值得一提的是,conda 并不仅仅管理Python的工具包,它也能安装非python的包。比如在新版的 Anaconda 中就可以安装R语言的集成开发环境 Rstudio。
虚拟环境管理: 在conda中可以建立多个虚拟环境,用于隔离不同项目所需的不同版本的工具包,以防止版本上的冲突。对纠结于 Python 版本的同学们,我们也可以建立 Python2 和 Python3 两个环境,来分别运行不同版本的 Python 代码。
这可是个好东西啊,各种乱七八糟的工具包和python版本不正是我们最头疼的事情吗,这个一下子就解决了!
- Anaconda怎么用
在Anaconda官网下载Anaconda的mac版本,安装
然后在启动台多出来了一个图标:Anaconda Navigtor
他们还做了个用户界面,真是贴心
打开一看,home页长成这个样子
上面的四个程序已经安装好了,看起来还是互相依赖的
那就先一个一个打开看看是干啥的
第一个打开后进入了web页面,在里面我找到了使用说明
我还找到了这个:译介:JupyterLab 已为用户准备就绪
通过简单的浏览,发现JupyterLab就是Jupyter Notebook的进阶版本,小到我现在编写的Markdown文本,大到交互式探索性计算,它都搞得定
最值得吹嘘的是它的个性化扩展以及对之前版本的支持
JupyterLab是一个交互式的开发环境,其用于应对包含着notebook、代码以及数据的工作场景。最为重要的是,JupyterLab对于Jupyter Notebook有着完全的支持。除此之外,JupyterLab让您能够使用文本编辑器、终端、数据文件查看器以及其他自定义的内容。他们都将以标签的形式肩并肩地和notebook一起排列在工作区中。
(估计要学会使用这东西需要漫长的时间)
第二个略
第三个点开发现是类似终端的程序
看到Qt两个字母和它简要的介绍我就能蒙出来它是干啥的了
它既有IPython的特性,具有强大的交互功能,又能显示图形
最后那个就是个集成开发环境
看了上面的四个软件,发现Anaconda功能真的很强大(尽管那四个和它没啥关系)
- Anaconda是怎么管理Python包的?
先把命令列个表
命令 | 解释 |
---|---|
conda install package_name | 安装 |
conda remove package_name | 移除 |
conda update package_name | 升级 |
conda upgrade --all | 将所有工具包升级 |
conda list | 查看所有下载的包 |
这些都是老生常谈了
实际上,在安装Anaconda的时候,它自动为您安装了许多常用的包,您可以conda list
查看一下
- Anaconda是怎么管理Python环境的?
所谓环境,在我看来其实就是将这个程序用到的工具包和python的解释器打个包
让我们再看一些命令
命令 | 解释 |
---|---|
conda create -n xx python=xx xx | 创建一个新的环境,xx分别代表环境名,python版本,包含的工具包 |
有这个选定python版本的功能,妈妈再也不用担心我电脑python和工具包版本不兼容啦
同时conda有一个很人性化的功能,就是当您的环境包含了某个后,它会自动为您将这个包的依赖包也添加到环境中
命令 | 解释 |
---|---|
source activate env_name | 进入名为env_name的环境 |
source deactivate | 退出环境 |
conda env remove -n env_name | 删除环境 |
conda env list | 查看所有的环境 |
同时,还存在一个很现实的问题,就是如何保证您电脑上的python代码能在别人电脑上运行
这就是环境的作用了,我们为某个特定的程序创建一个新的环境,这个环境仅包含该程序用到的工具包,而不是您电脑上所有的包,这样即方便打包又缩小了整个程序的体积
同时它还可以做到环境的共享,具体的命令是这样的
命令 | 解释 |
---|---|
conda env export > name.yaml | 当前环境信息存入YAML 文件中 |
conda env create -f name.yaml | 通过YAML文件创建一个环境 |
这样,当您和您的朋友电脑上都安装了Anaconda时,就可以使用这种方法复制环境了
以上,我们就简单的介绍了Anaconda的使用
等等,似乎跑题了,我本来是想研究一下python模块路径的(吓的我立刻去改了标题)
那我接着补坑
python工具包路径设置
既然Anaconda就是用来管理安装包的,让我们先来看一看它放置在哪里
这里有一份windows下的Aanaconda的介绍:Anaconda完全入门指南
然而mac和Windows的差别还是挺大的,只能自己摸索了
其实我有一个很偷懒的办法,就是用Anaconda自带的集成开发环境,我想那样import就不会出现任何问题
但我要是还想用我的pycharm呢?
mac下的pycharm界面和windows的不太一样
我们依次点击File->Preferences of New Projects->Project Interpreter
也就是这样的界面
然后我们点击右上角的小齿轮,点击add,点击新出现的Conda Environment
给环境取个名字,再在右下角点击ok,这样接下来我们创建的python程序就都由Anaconda解释了
然而,我还是高兴的太早了,当我
from PIL import Image
时,pycharm依旧显示找不到PIL原来,我们刚才创建了一个conda下的环境,却没有将工具包导进去
我们打开Aanaconda Navigtor ,在首页打开Environments,在这里就能看到我们新建的环境
我给我新建的环境取名为python37,打开之后发现里面缺省安装17个工具包,将选择栏中的installed改为all,就可以看到所有的工具包了,搜索需要的工具包点击apply,就可以完成在对应的环境下载工具包
最后别忘了回到pycharm去apply我们的设置
还有一个问题,如果我们不想单独建立一个环境而是想随便用Aanaconda的全部工具包呢?
我们还是进入Project Interpreter界面,点击右上角的小齿轮
但这次我们不进入Conda Environment,而是System Interpreter
设置路径如下,再点击ok和apply就好了
image
还有一个小问题,是最后apply的时候可能显示“Cannot Save Setting”
那是因为您之前设置的环境名和新的环境名重名了,这时只要查看Project Interpreter然后点击show all把不用的环境都删除就可以了
更新:
我悲剧的发现pycharm新建的python项目会默认新建一个环境,这个环境里啥有用的都没有,这个时候我们可以在Project Interpreter界面把新建的环境删掉
然后pycharm会显示没有Interpreter,然后让我们重新选择一个,这时候我们选上之前add的环境就OK了
网友评论