美文网首页软件测试必会
NO.0 python模块路径设置+Mac的Anaconda使用

NO.0 python模块路径设置+Mac的Anaconda使用

作者: 8c8c08331b81 | 来源:发表于2019-01-10 23:47 被阅读44次

    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了

    相关文章

      网友评论

        本文标题:NO.0 python模块路径设置+Mac的Anaconda使用

        本文链接:https://www.haomeiwen.com/subject/nqxtdqtx.html