作者 | 苏克 1900
来源 | 高级农民工
摘要:此文主要针对想入门 Python 但不知道看什么书好和有选择纠结症的童鞋,大佬们可绕道。
转眼也到了年终,这一期换个话题,围绕这几个问题:「学习 Python 该看哪些书?不同的书该怎么看?按照什么样的顺序看?」,来聊一聊如何入门 Python,为了更有说服性一些,这里我把入门时看过的一些大佬推荐的书单进行了汇总,最后结合我的学习路径谈谈怎么读书。
半年前,Python 对我来说就是谜一样的东西,根本不知道如何下手、从何处下手,整天像无头苍蝇一样到处找资源,个把月过去了还没找到 Python 大门在哪儿,主要是花了很多的时间在纠结「该学习 Python 还是 R、学习 Python3 还是 Python 2、看什么入门书最合适?」这些问题。知乎、豆瓣、CSDN、各大佬的公众号搜罗逛了一圈下来,只明确了前两个问题,就是要学习 Python,而且是 Python3,但对于看什么书,陷入了纠结迟迟下不了手。
现在看来,这应该是属于必经的过程,当涉足一个陌生的学习领域,对什么都不了解,即使别人给的建议再对,也会掂量犹豫几下。慢慢地,我开始进行总结,把一些大佬推荐的入门书籍文章进行汇总对比,然后就发现有些书是都在推荐的,于是决定重点就看这些书,这样才算慢慢摸到 Python 的大门。
话不多说,下面就分享 5 位大佬推荐的书单,除了入门书,还包括数据分析、数据挖掘、机器学习等方面,可以说是非常全面。
▌刘志军 (Python 之禅 作者)
刘志军是位不折不扣的 Python 大佬,他博客中的 Python 文章最早可以追溯到 2013 年。
▌leoxin (菜鸟学 Python 作者)
辛哥爬取分析了豆瓣 Python 相关的 1000 多本书籍,从各个角度找到了最受欢迎的书目,然后给出了自己的推荐。
▌刘顺祥 (数据分析 1480 作者)
刘顺祥大佬的公众号干货很多,入门时学习到很多。
▌秦路 (七周成为数据分析师课程作者)
秦路大佬在天善智能社区开设的《七周成为数据分析师》课程非常棒,他的推荐也非常值得参考。
▌王大伟 (Python 爱好者作者)
王大伟大佬写的文章非常有趣,我看了他的几篇关于类(Class)的文章后才彻底搞懂类是怎么回事。
以上就是 5 位大佬的推荐,想必你心里大概有个谱了,下面再说说我看过的一些书,然后分享一下我的入门路径。
▌我都看了哪些书
你可能注意到了,以上推荐了少说也有好几十本书,范围还是有点大,就算都是值得看的书,也没么多时间精力都去看,所以上面只是入门 Python 的第一个步骤,即筛选书的范围,还有更为重要的两个步骤。
第一,首先要明确你学 Python 的目的。也就是你想学了去干嘛,是做爬虫、数据分析挖掘、机器学习、web 开发还是什么其他的,虽说不同的方向都需要有 Python 基础,但对 Python 的基础也是有所侧重,只有确定一个方向才可以进一步筛选书和书中章节的范围。
第二,确定了书的范围后,要琢磨好怎么去看每一本书、以什么样的顺序去看书。不然,同时看好几本书,每一本都从头开始看,坚持不了几天就会放弃。
下面以我入门的过程来具体说一下。
由于我此前是零编程基础,helloworld 都不会打的那种,上知乎看了几个 Python 入门的回答后,觉得用 Python 做数据分析这个方向不错,加上我此前学 Excel 时就对数据分析比较感兴趣,所以就确定了这个方向,但很快就发现行不通,因为我连基本的 Python 操作都不会,处处卡壳,时间都花在抠一个个的小问题上去了,折腾到最后也没太大兴趣去分析了,而且数据分析本身是有一套理论方法的,我更不会,如果同时学 Python 操作和分析方法,比较耗费精力,显然不可取,所以就放弃直接学数据分析这个想法。
然后我选了另外一条路,就是爬虫,因为基础的爬虫比数据分析简单,学习曲线不陡,而且爬虫比较有意思,写出来别人也更愿意看,进一步了解到初步的爬虫学习主要学几个爬虫类库、网页解析提取库、框架这几块就行了,这样一下就缩小了书的选择范围和内容范围。
至此,我就选择了 「Python 基础——爬虫——数据分析」 这样一条路线。
首先,我选择了《深入浅出 Python》这本书作为入门的第一本书,该书浅显易懂,注释详尽,对新手很友好。接着,我又大致过了一遍《Python 编程从入门到实践》,前面几章写得非常实用,这样对 Python 就有了一个大致了解。
接着,便开始上手爬虫,但爬虫类的书非常少,起先只找到两本,一本是国外的《Python 网络数据采集》,书不厚,看了后大致了解了:爬虫是怎么一回事、爬虫能做什么、要会哪些东西等这几个问题,另一本是韦玮老师的《精通 Python 网络爬虫》,这本书当时觉得还不错,有很多实操案例,但是理论部分欠缺一些。
后来偶然搜到了崔庆才大佬的爬虫文章,很赞,果断就买了他刚出的《Python3 网络爬虫实战》这本书,由此算是找到了爬虫方向。
通过爬虫把数据爬下来后就开始尝试一些简单的分析,但发现很多操作根本不熟练,于是采取了两种方法去学习,首先是谷歌解决实际问题,然后闲的时候翻看了《利用 Python 进行数据分析》、《流畅的 python》、《Python Cookbook》这几本书,算是系统地巩固了一下相关知识。
就这样,几个月下来,练习了 10 个左右的爬虫,自认为算是入门了 Python 爬虫和数据分析。