几乎所有的 Python 学习者都遇到过“安装”方面的问题。这些安装问题包括 Python 自身环境的安装、第三方模块的安装、不同版本的切换,以及不同平台、版本间的兼容问题等。当你因为这些问题而卡壳,一行代码没写就已疯,相信我,你不是一个人……包括我自己,也是这么被坑过来的。

我自己印象最深的是在 Mac 上安装 pycrypto(加密)和 scipy(科学计算)模块,折腾了很久。因为这类模块并不是单纯的 Python 代码,而是需要调用诸如 C 语言的库,于是就牵涉到在不同平台上的编译,有些还不能很方便地用虚拟环境分离版本。在数次尝试失败之后,最终靠着一样工具竟轻松搞定。这就是今天要介绍的:

Anaconda

应该有不少人已经了解和在使用中,另外也考虑到先 Mark 以后需要时再看的收藏党,这里先给个“嫌长不想看”版:

  1. Anaconda 就是一个扩展版 Python,最直接的好处是帮你打包好了一整套数据科学相关的 Python 库,一次安装就可以拥有数据分析、数值计算、数据可视化、机器学习常用的几十个库,不用担心安装不成功、版本不匹配等问题,省时省心。

  2. Anaconda 的核心是 conda 这个包/环境管理器,类似于我们之前介绍过的虚拟环境 virtualenv,且功能更丰富。装了 Anaconda,同时也就可以使用 conda 来管理电脑上不同版本的 Python 环境。

  3. 如果对 conda 的使用不熟悉也没关系。Anaconda 还附带了一个叫做 Navigator(导航)的桌面 GUI 工具,可以直观的创建和管理环境,安装、删除扩展包

  4. Anaconda 安装后,附带了 Jupyter 和 Spyder 两种 IDE。Jupyter 是一种基于浏览器的交互式开发环境,这种边开发边执行的模式很适合编写数据科学类的程序。Spyder 的界面和 Matlab 很相似。不过如果你对 PyCharm 已经熟悉,也可以直接通过设置 interpreter(解释器)路径来直接使用 Anaconda 的环境。

主要就是这几点,如果你在使用中遇到过什么问题,欢迎在文本下方留言讨论。有其他想法或者想听的内容,也欢迎告诉我们。


Anaconda 这个词,字面意思和 Python 类似,都是大蟒蛇。系列电影《狂蟒之灾》的主角就是这玩意儿。美国著名嘻哈歌手麻辣鸡(Nicki Minaj)有首歌就叫《Anaconda》(本文的封面,小孩子不要去搜)。这个项目命名其实很形象:Anaconda 就是一种更大的 Python

再做个类比:安装了 Python 就像买了个毛坯房,虽然刷了涂料通了水电(内置库),但你真的想住进去,还得自己根据需要进行装修(安装各种第三方库)。而 Anaconda 就是个精装修。这个精装是面向数据科学的,同时也保留了你自己进一步改装的空间。

官网上有一个 Anaconda 支持库的列表:

http://docs.anaconda.com/anaconda/packages/pkg-docs/

里面有很多熟悉的面孔(挑了其中几个常见的):

打钩的是包含在安装包中,未打钩的需要后续手动安装。数据分析必备的 numpy、pandas、scipy、matplotlib 自不用说,像数据采集的 requestsbeautifulsoup、scapy,Web 开发的 flask,GUI 的 pyqt,图像处理的 pillow,机器学习 scikit-learn,都直接帮你装好了。就连 vs2015_runtime 这种也为你贴心附上,被坑过的同学应该都懂。

唯一的缺点大概就是这样会比较占空间。但既然你都下决心深入 Python 开发了,这也就是少装一个游戏的空间吧。

如果你安装 Anaconda 的话,是不必装 Python 的,因为它本身包含了 Python 的环境,避免了版本不匹配的问题。Windows、Mac、Linux 三个平台都支持,直接从官网下载安装即可。(建议选择最新版)

https://www.anaconda.com/download/

正常按提示安装没有太大问题,网上的安装示例也一搜一大把,这里不赘述。Windows 建议安装时右键点击,选择“以管理员身份运行”。

安装好之后,检查下你的 Python 是否已经是 Anaconda 环境下的了。(从提示中可以看出)

这时候,你可以通过 conda 来管理你的安装包和环境。使用方法和我们之前介绍过的virtualenv 类似(参见《为什么你的python版本一团糟?因为少了这个操作》)。常用的命令有

  • conda list:查看环境中的所有包

  • conda install XXX:安装 XXX 包

  • conda remove XXX:删除 XXX 包

  • conda env list:列出所有环境

  • conda create -n XXX:创建名为 XXX 的环境

  • conda env remove -n XXX:删除指定环境

  • activate XXX(或 source activate XXX):启用 XXX 环境

  • deactivate(或 source deactivate):退出环境

同 pip 一样,如果使用 conda 安装很慢,可以通过修改国内源的方式来加速。修改C:\Users\当前用户名\.condarc(非 Windows 是 ~/.condarc),加入如下配置:

channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/- defaults
show_channel_urls: true

Anaconda 的又一贴心之处在于,给了你一个叫做 Anaconda Navigator 的桌面 GUI 工具,把上述 conda 的功能都做成了点击按钮就可以完成的事情。

包管理和环境管理都一目了然。

数据科学库、包/环境管理、Navigator 工具,这几样就是 Anaconda 的主要功能。

另外值得一提的是:Anaconda 是附带了一系列第三方库的 Python 以及对这些库的管理工具,和我们之前说的 PyCharm 不是一类东西。PyCharm 是 IDE,用来写代码的编辑器。你可以把 Anaconda 作为运行环境放在 PyCharm 里使用。只要你创建项目的时候选择已经配置好的 Anaconda 环境即可。关于 PyCharm 的具体配置可以在公众号(Crossin的编程教室)里回复关键字 pycharm

而 Anaconda 默认附带的另一个开发工具 Jupyter,也是非常值得推荐的。你可以从 Navigator 里运行,或者在命令行执行命令:

jupyter notebook

它是一个基于浏览器的交互式开发工具。跟 Python 自带的交互环境相比,它的自动完成和提示功能都强大许多,并且你不用再纠结不能在交互环境里写多行代码的问题。

这种代码分块,可以边开发边执行的模式,非常适合编写爬虫、数据处理、数据分析等数据科学类的程序。我之前的很多案例都是使用它来开发,你们看到项目代码中的.ipynb 文件就是可以导入 Jupyter 的文件。另外它还有个好处,就是可以部署在自己的服务器上使用(当然这也有安全风险),这样只要有网络,你就能随时随地写 Python 了。

不管是 Anaconda 还是 Jupyter,以及之前推荐多次的 PyCharm,到底好不好用,是不是适合你,自己试过了才知道。花点时间装起来用一下,然后欢迎你回来报告使用体验。

我也曾经因安装库而抓狂,直到我遇到了Anaconda相关推荐

  1. python安装库-python 安装库

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 安装插件使用命令 pip install opencv-python下载 ...

  2. pip install 及导出安装库,批量安装库

    1. 批量安装库 pip install -r e:\requirements.txt 2. 导出安装库及版本 pip freeze > requirements.txt 3. 查看库信息 pi ...

  3. python 安装库 requirements.txt

    python 安装库 requirements.txt 注意 windows下用 pip linux 下用 pip3 生成库文件 pip freeze > requirements.txt 下载 ...

  4. pip安装库包遇到错误:TypeError: expected str, bytes or os.PathLike object, not int 的解决方法

    1 问题描述 1.在安装python3的库包时候,遇到和os模块相关的错误:TypeError: expected str, bytes or os.PathLike object, not int, ...

  5. pip安装库包以及.whl库包、.tar.gz库包具体方式

    欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 pip安装库包以及.whl库包..tar.gz库包具体方式 文章目录: 1 pip安装库包 2 安装 .whl库包文件 ...

  6. Python中使用pip安装库时指定镜像源为豆瓣镜像源

    场景 在使用pip进行安装库时,使用默认的库会很慢,甚至有时会出现远程主机中断了一个现有连接. 怎样在使用pip install 时指定镜像源为豆瓣镜像源. 实现 pip install moviep ...

  7. linux 安装库 编译提示-lcrypto 无法链接,缺少 crypto 库

    linux 安装库 缺少 crypto 库 编译提示-lcrypto 无法链接,缺少 crypto 库 方法一 ------------------------------------- crypto ...

  8. 安装库_Python快速安装库的靠谱办法

    很多同学在安装第三方库时会经常遇到 pip 在线安装速度慢的情况.慢也就算了,有时安装还会由于 timeout 等原因中断.所以有没有什么在线安装库并且速度较快的办法么?答案是有的!我们可以将下载库的 ...

  9. PHP爬虫音乐,PHPCrawl爬虫库实现抓取酷狗歌单

    爬虫是一个很有意思的功能,本文主要介绍了PHPCrawl爬虫库实现抓取酷狗歌单的方法,涉及PHPCrawl爬虫库的使用及正则匹配相关操作技巧,需要的朋友可以参考下,希望能帮帮助到大家. header( ...

最新文章

  1. 【系统平台】大四区部署
  2. LoadRunner监控局域网内其他服务器系统资源设置
  3. error: style attribute '@android:attr/windowEnterAnimation' not found.
  4. flink DDL读取kafka数据-Scala嵌入DDL形式
  5. java通过ldap添加用户后_ldap连接不上改用户_JAVA通过LDAP做用户登录认证,怎么做业务的异常处理?...
  6. linux下I2C驱动发送IO时序,I2C驱动情景分析——怎样控制I2C时序
  7. 一位在项目上的好友求助
  8. JQuery 技巧大方送
  9. 如何避免 obj1 + obj2 = obj3 错误?
  10. 【C++】算法集锦(11):敏感词过滤算法(DFA)
  11. 【vue】webapp移动端模板
  12. lol连接服务器失败怎么修复,英雄联盟lol连接服务器失败怎么办?解决方法大全...
  13. HTML Rendering Error
  14. 常见的协议的协议号及端口
  15. 【微信小程序】获取用户信息
  16. seo推广优化的方法
  17. Sequelize 数据迁移
  18. Flink process 和 apply 简单案例
  19. SVN客户端安装及使用说明
  20. 【借鉴/转载】WSI的处理

热门文章

  1. MYSQL高可用架构MMM实现
  2. 为什么静态成员函数可以访问私有成员变量?(访问控制是针对类而不是针对对象)
  3. 【我的C语言学习进阶之旅】介绍一下NDK开发中关于JNI函数的两种注册方式:静态注册和动态注册
  4. python 快速获取图片大小
  5. ios开发之公交卡系统的设计与实现
  6. linux cat命令缩写,linux下cat命令详解
  7. 定义python函数时如果函数中没有return语句_定义Python函数时,如果函数中没有return语句,则默认返回空值None。...
  8. PyTorch中的torch.clamp()实现矩阵裁剪
  9. R安装与卸载、RStudio安装
  10. 【附源码】计算机毕业设计SSM芮城县十全十美火锅店点餐系统