只有新手才会纠结于“精通”。因为上一个说自己“精通”的人,已经被喷成筛子了……
编程本来就是一个循序渐进的过程,不可能一口吃成胖子,与其纠结精通,不如踏踏实实地把知识从头到尾学一遍。
话不多说,先上一张 Python 知识图谱,直观的了解一下 Python 的基本构成与实际应用。
Python的主要应用领域有数据分析、网站开发、机器学习等,可以想好自己将来要深耕哪个方向,如果都比较感兴趣的话,每个方向也都可以深入。
大家就按照知识图谱从基础到进阶一步步学习,学习资料在好不在于多。
一、入门阶段
很多新手刚开始学Python的时候,看到一大堆概念和代码就一头雾水,这套Python教程不一样,可以说是非常友好!
这套Python教程总共有5个level,以闯关的模式每做完一个level自动解锁下一个,也都是免费的。
教程覆盖了更多的理论知识讲解、安装教程、注意要点,还贴心的为每个知识点设置了专门的练习题,匹配当下的Python面试形势。
市面上很多Python基础课要么只讲实战,要么只谈原理,这门课程的优势在于实战(手把手教coding)与原理(算法和数据结构的知识)相结合。同时,这门课采用用Java和Python双语教学,可以同时学会两门语言,让你更快找到编程方向。
3.《Python编程》
章节安排合理,手把手体验式,对于完全零基础(之前没有任何计算机相关经验和知识)的人适用。但是这本书完全不涉及高级机制,是本实打实的入门书。
书中会手把手教你写代码,所涉及的内容比较浅,对于新手非常非常非常友好(划重点),但有基础的同学就不推荐这本书了。
二、进阶阶段
Python数据结构与算法系列课程
学习到一定阶段,不了解数据结构和算法的程序员是不合格的,尤其是如果你有想进大厂的期望,就得刷题应对算法面试,其实刷这几个知识点就够了:
颜色越深的考的越多,需要重点掌握;颜色越浅的考的概率越低,灰色的少考或不考。
刷题有助于完善对Python的理解,也帮助有至成为IT大佬的同学掌握计算机系统性的知识,早日向更多实用技术和编程语言迁移。
更多算法和数据结构的考察情况,都来自北大学霸的《算法面试速成技巧-轻松做到Bug Free》讲座,里面还有特定问题的具体分析,非常适合需要大佬帮忙建立完善知识体系的人。
2.李宏毅机器学习
想通过Python学习机器学习,但又苦于吴恩达大佬全程英文授课听不多的小伙伴,可以看向这里,国内大佬李宏毅的机器学习知识分享。涵盖了回归、分类、梯度下降、反向传播、Keras使用等多个常用基础知识点。
3.《流畅的Python》
本书适合中级Python软件开发人员阅读参考。
不得不说这是一本Python进阶书里的精华,里面覆盖了很多Python编程的奇技淫巧。内容有深度但是不难,深入浅出,循序渐进。算是比较进阶的知识,可能需要二刷三刷。
对于致力于写出简洁、流畅、易读、易维护,并且具有地道Python风格的代码,这本书值得推荐。
三、实战项目
光会理论没有练习完整的项目可不行,推荐3个从易到难的项目,不仅能让你学到的知识点加以应用,还可以把项目写进简历里,提升简历含金量。
Python 实现的精简绿色版按键精灵。记录用户的鼠标、键盘操作,自动执行之前记录的操作,可设定执行的次数。在进行某些简单、单调、重复的操作时,使用该软件可以十分省事儿。只需要录制一遍,剩下的交给 KeymouseGo 来做就可以了。
2.用机器学习来减肥
这是一个机器学习的项目,作者Ariel想要减肥,通过数据,他为自己制定更科学的减重方式。我们可以通过他代码,了解生活中应用机器学习的案例。
Facebook资深架构师的Twitter项目,带你从零设计Twitter,最终搭建一个P8(L5)水准的项目。
涉及万行代码,最终成果是一个可上线的工业级别的项目,而不是像市面大多数项目课程简单做个demo。
涉及的面试难点包括:
- 如何分别测试登录用户和未登录用户?
- 如何做反向查询?
- 如何设计数据库表达?
- 如何让部分用户看到某个新功能,其他用户看到的就是功能?(灰度测试)
- comments的API该如何设计?
- ……