网上教程五花八门,读者吐槽最多的,也都是怎么搭建开发环境。
对于小白来说,开发环境搭建,是必过的第一关。
记得自己刚学 Python ,还是小白的时候,最爱做的一件事就是:折腾开发环境。
代码还没写几行,就各种折腾,走了太多弯路,浪费了太多时间。
IDE 我也折腾了个遍,Eclipse、Pycharm、Sublime Text 等等。
折腾了几周,代码不会写啥,最后也就来个「Hello World」。
作为工作时长两年的「算法搬砖工」,今天给「未来的大牛,如今的小白」们讲一下,开发环境怎么搭建。
以后要是有朋友问你环境搭建问题,文章直接发给他,告诉他,这篇教程真的香!
1
环境搭建
我们都知道,Python 是一种脚本语言,有着丰富的第三方库。
Python 自带了很多官方库,可以直接用,例如 re、os、math 等等。
但第三方库是需要我们自己安装的。
就好比,一个正常人,一生下来,自带了眼镜、鼻子、嘴巴等,这就是“官方库”。
你要是想买个漂亮衣服,做个漂亮发型,那得自己“安装”,这就是“第三方库”。
Python 提供了超级多,而且强大的第三方库。
我们搭建开发环境,就是让 Python 具备各式各样的能力,以满足我们的需求。
第三方库很多都是个人或者团队,非 Python 官方开发的库,所以难免五花八门,杂乱不堪。
甚至有时候,各个版本的库,还存在各式各样的冲突。
这个库不兼容那个库,各种「无厘头」报错层出不穷。
一劳永逸,解决 or 避免这类问题的方法,就是搭建一个「健壮」的开发环境。
方案:Anaconda + Jupyter Notebook。
好维护,好安装,你好我也好,大家好才是真的好。
1、Anaconda
Anaconda 就是管理第三库的工具,同时支持“多开”。
你可以用 Anaconda 创建多个虚拟环境。
啥意思?
一个虚拟环境好比一个人:
培养小王为数学家,专门负责数学相关的事。
培养小李为语言学家,专门负责语言相关的事。
体现到虚拟环境上,就是这样:
我创建了很多虚拟环境。
base 是安装 Anaconda 自带的一个基础环境。其它都是根据自己需求,创建的一个个独立环境。
比如,名为 jack 的环境,是一个通用的开发环境。而名为 faceswap 的环境是我专门为换脸算法搭建的环境,因为它的依赖和有些通用第三方库包是冲突的。
Anaconda 还是跨平台的,在 Windows、MacOS、Linux 都可以安装。
2、Jupyter Notebook
小白推荐 Jupyter Notebook,为啥不推荐 Pycharm 这类 IDE 呢?
因为 Jupyter 安装简单,并且好用,可以在多种平台运行。
工作后,跑算法,往往都是在服务器上运行的。
连个图像界面都没有的服务器,你还能用 Pycharm ?
Jupyter Notebook 是一个基于网页的交互式计算笔记本环境。
实现了文字和代码的完美结合,你甚至可以边学习边做笔记,文本编辑还支持 Markdown 格式,插入各种数学公式也不在话下。
并且由于 Jupyter Notebook 是基于网页的,你完全可以在服务器端开启服务,本地电脑打开网页,运行各种服务器端的代码。
如果你是做算法、做爬虫,刚学 Python 的小白,不涉及浩大的 Python 工程的开发,那么别犹豫,用 Jupyter Notebook 就对了。
3、安装
Anaconda + Jupyter Notebook 的好处安利个遍。
那么,怎么安装呢?
Anaconda 下载地址:
https://www.anaconda.com/products/individual#download-p
根据自己的环境选择安装包:
安装很简单,傻瓜式下一步安装即可。
Windows 安装完,需要手动添加环境变量。
Linux 和 MacOS 在安装过程中,会有提示是否设置环境变量。
Windows 添加环境变量需要在电脑->鼠标右键->属性->高级系统设置->环境变量->Path中设置。
D:\Anaconda 为 Anaconda 的安装目录,将下面这两个地址添加到 Path 中即可。
D:\Anaconda
D:\Anaconda\Scripts
都配置好后,可以在 cmd 或 Anaconda Prompt 中使用 Anaconda 搭建环境了。
输入指令:
conda create -n your_name jupyter notebook
这句话的意思是创建一个名字为 your_name 的虚拟环境,并且这个虚拟环境额外安装 jupyter notebook 第三方库。
可以将 your_name 改为你自己喜欢的名字,这个名字是你的虚拟环境的名字,自己随便取,比如jack。
随后,输入y进行安装:
安装好后,可以通过指令 conda info -e 查看已有环境情况。
从上图可以看到,有两个环境,一个是 base ,自带的基础环境,另一个是我们新创建的名为 jack 的环境。
安装好环境后,我们可以使用指令激活 jack 环境:
activate jack
可以看到,我们的环境由 base 变成了 jack 。
接下来,我们就可以在这个环境里,安装自己想要的第三方库,比如 requests。
conda install requests
对于 conda 搜不到的包,也可以使用 pip 安装:
python -m pip install xxx
需要安装的第三方库安装完毕,可使用命令直接打开 Jupyter Notebook:
jupyter notebook
效果如下:
创建一个新的 notebook:
输入代码后,按 Ctrl + Enter 快捷键,即可运行程序:
这个 Jupyter Notebook 使用的环境就是名为 jack 的虚拟环境。
想安装 Pytorch 啥的,直接在这个虚拟环境里安装即可,真香!
2
总结
使用 Anaconda + Jupyter Notebook 搭建环境的方案,非常适合新手。
Jupyter Notebook 的功能也很强大,它绝对是你学习算法、分析数据的好帮手!
RECOMMEND
推荐阅读
01
《AI速成课:从AI编程到构建智能软件》
作者:[阿联酋]赫德林·德·庞特维斯(Hadelinde Ponteves)
译者:程泽、黄曼莉
ISBN:978-7-111-66127-6
推荐理由
卖点:
本书是一本理论与实践兼备的AI入门书。与同类书籍相比,本书以“模型描述+基础数学理论+Python语言实现模型+实际商业案例”的方式阐释人工智能技术,可以帮助你深刻体会机器学习,尤其是强化学习和深度神经网络为什么如此重要,以及如何将相关技术应用到物流、能源、自动驾驶,甚至游戏领域。从汤普森采样模型,到Q学习模型,再到深度Q学习模型、深度卷积Q学习模型,本书一步步教你学会更复杂的机器学习理论与编程知识,并将人工智能融入自己的应用中。
推荐语:
与Udemy平台的优秀人工智能讲师HadelindePonteves一起解锁人工智能的力量,从零起步掌握人工智能基础知识。
02
《机器学习算法的数学解析与Python实现》
作者:莫凡
ISBN:978-7-111-64260-2
推荐理由
卖点:
l 生动——语言生动幽默,通过分析大量生活案例,帮助读者理解机器学习的算法。
l 简单——让很多听起来高大上的名词更实用。
l 实用——精选了最主要的机器学习算法,如线性回归算法、Logistic回归算法、KNN算法、朴素贝叶斯算法、决策树算法、支持向量机算法、K-means聚类算法、神经网络、集成学习方法等。
l 系统——从概念、原理、Python实现、应用场景几个方面,详细剖析机器学习中主要的算法。
推荐语:
有趣、易懂、不枯燥,看得懂、学得会的机器学习入门书。全书用白话讲解,帮你从生活案例中理解算法,发现算法的乐趣,再把算法应用到机器学习中,让你零基础掌握算法精髓,快速进入人工智能开发领域。
更多精彩回顾
书讯 | 12月书讯 | 年末上新,好书不断
书单 | 机器人时代已来!推荐几本机器人学硬核好书
干货 | 电商数据分析的方法、流程及场景
收藏 | 终于有人把大数据讲明白了
上新 | 达观数据CEO陈运文:“AI+RPA”如何赋能企业数字化转型
赠书 | 【第32期】量子科技成为国家战略!这几本书带你进入量子世界!