2021最新Python开发工程师,学习路线推荐(内含pdf资源)

作者:悠悠做神仙 来源:[恒生LIGHT云社区](https://developer.hs.net/thread/1172) > 本文是2021最新Python开发学习路线,根据不同方向推荐了一些要学习的内容,同时根据要学习的领域,给出需要关注的技能项和学习资料,会有推荐一些比较好的网络免费课程,以及一些经典权威图书,部分图书附有pdf下载链接,可以直接获取(后续会不断补全),避免找资源的时间。 > > 希望能给大家的Python语言学习,能有所帮助! PS:恒生云社区,【极客时间】会有一些优秀的课程视频供大家学习,比如:[Python金融数据分析课程](https://developer.hs.net/coursecategory/78)。 **参考学习脑图:** ![](https://developer.hs.net/storage/attachments/2021/07/05/09uHIHyiqepzVVtq9KjwexjPwFeLxPKKJBo9lODj.png) ### 前言 脑图部分仅仅是针对一个Python开发工程师的学习路线推荐,实际上作为任何语言的学习,还是要先了解计算机基础,以及一些网络相关的基础知识。下面会按领域和类别,按照技能项,对各个部分推荐一些学习教程和图书,方便大家进行学习。 ### 1、计算机基础 计算机基础是学习任何语言之前,都需要先了解的。可能有人会疑问,”我编程是写代码,为什么摇了解一些计算机底层的东西,我又用不到?“ 基础的东西,在刚接触语言的时候,确实感觉似乎没什么实质的”作用“,但是在后续的职业发展中,这部分将会是你和同事拉开距离、避免内卷的王牌。程序员后续的职业发展,如果是技术方向,最高的就是架构师、CTO,底层原理的通晓是必备。 作为初学者,这部分还是要花些功夫,这部分对于面试也是有极大帮助。 ##### (1)操作系统 该部分主要的**技能项**:进程管理、内存管理、文件管理、输入输出等。 **推荐书籍**:以下推荐书籍PDF请点击 [原文链接](https://developer.hs.net/thread/1172) 查收资源~ 《计算机操作系统(第三版)》 ![就算级.png](https://developer.hs.net/storage/attachments/2021/07/04/TXCPjJvRXKVt6mSPDh55tTpCZz2YcfMsfIKOGeLQ_thumb.png "1959") 《操作系统概论》 ![操作系统.png](https://developer.hs.net/storage/attachments/2021/07/04/lCUrZGTQLzyLjbwwyegvzak7wt44RvUs8JuGZU5u_thumb.png "1953") ##### (2)计算机网络基础 主要是了解一些网路基础知识,主要是一些协议和网路相关知识。 **推荐书籍**:《TCP/IP详解》系列,主要了解卷三,可以对网络七层模型、TCPUDP、IP部分先做了解学习。 ![TCP/IP详解 卷3:TCP事务协议、HTTP、NNTP和UNIX域协议](https://img11.360buyimg.com/n1/jfs/t1/30126/14/5421/159761/5c8624e6E6db1e730/56f110b8368b81bf.jpg) ##### (3)数据结构与算法 这部分是要贯穿程序生涯始终的部分,所以可以在掌握了一些开发基础后,进行深入学习,基本上语言学习入门后,在掌握了数据结构相关知识,刷算法题应该是成为每日必备。尤其是现在开发岗位面试,无论什么年限和title,无论笔试还是技术面,都会有这部分的涉及,答的好往往对最后拿到Offer取到关键作用。 **技能项:** 算法:二分法、递归、回溯法、 排序算法、搜索算法、哈希算法、贪心算法、分治算法、动态规划、字符串匹配算法等。 数据结构:数组或向量、链接列表、堆栈、树、队列、哈希、链表等。 **推荐书籍:** 《数据结构与算法-Python语言描述》 ![数据结构与算法:Python语言描述 ](https://img10.360buyimg.com/n1/jfs/t2362/52/1930964389/283376/bab08875/568a2f53Nd6e77348.jpg) 《Python数据结构与算法分析》(图灵出版) ![Python数据结构与算法分析 第2版(图灵出品)](https://img13.360buyimg.com/n1/jfs/t1/53808/28/9140/129920/5d68ba76E37af7a38/adca039c551ca941.jpg) 《图解算法 使用Python》 ![图解算法——使用Python](https://img10.360buyimg.com/n1/jfs/t1/2131/16/11266/60739/5bce94b4E874e3016/4cefcf64771bef7a.jpg) ##### (4)Linux操作系统 **技能项**:Linux基础、Shell基础、系统管理、网络服务等 **推荐书籍:** ![鸟哥的Linux私房菜 基础学习篇 第四版](https://img10.360buyimg.com/n1/jfs/t30046/50/220320157/307090/726c45e1/5beb9d94N19d87979.jpg) 《深入理解Linux内核》 ![深入理解Linux内核(第三版)](https://img12.360buyimg.com/n1/jfs/t1/186421/17/2788/143186/609b4e89Eeb96aea9/1f4587681ce290a0.jpg) ### 2、Python编程 这部分主要介绍语言的徐熙,包括编程工具了解,基础语法和高级语法学习。 ##### (1)编程工具 python编程工具主要有自带的ide工具、Pycharm、Sublime Text、Eclipse+Pydev等。 比较推荐Pycharm,PyCharm 是由 JetBrains 打造的一款 Python IDE。 PyCharm 具备一般 **Python IDE** 的功能,比如:调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。 另外,PyCharm 还提供了一些很好的功能用于 Django 开发,同时支持 Google App Engine,更酷的是,PyCharm 支持 IronPython。 ![微信截图_20210704130102.png](https://developer.hs.net/storage/attachments/2021/07/04/LzGLTIBc5***5jCOHCQRrFZncWPzwIsw6AJHZ9XQ_thumb.png "1955") **PyCharm 官方下载地址:[http://www.jetbrains.com/pycharm/download/](http://www.jetbrains.com/pycharm/download/)** ##### (2)Python基础语法 **技能项:** 基本数据类型、解释器、运算符、列表、元组、字典、集合、条件控制、循环语句、模块、文件管理IO、面向对象、异常等。 **教程及图书推荐:** [Python基础教程](https://www.runoob.com/python/python-tutorial.html) [Python3教程](https://www.runoob.com/python3/python3-tutorial.html) [深入Python3](https://diveintopython3.net/) ![Dive Into Python 3](https://diveintopython3.net/i/cover.jpg) [廖雪峰学习网站-Python教程](https://www.liaoxuefeng.com/wiki/1016959663602400) 《Think Python》 ![预订 Think Python: How to Think Like a Computer S...](https://img11.360buyimg.com/n1/jfs/t1/113417/38/6495/69712/5eba609cEecda4e89/1c207f4a2d1e4cf0.jpg) ##### (3)Python高级编程 **技能项:** 正则表达式、面向对象、多线程、网络编程、XML解析、Json解析等。 ### 3、常用库&框架 ##### (1)web框架 **技能项**:Django框架、Flask框架、Pyramid、Japronto(高性能微服务架构)、Tornado等。 **教程推荐:** Django:[Django教程](https://www.runoob.com/django/django-tutorial.html)、[Django详细学习文档](https://docs.djangoproject.com/zh-hans/2.0/) Flask:[Flask框架学习](https://dormousehole.readthedocs.io/en/latest/) ![f.png](https://developer.hs.net/storage/attachments/2021/07/04/ULTZRkdiEaUCPUlFCgLdPhcQ1Vjw1P5EEwEKb0ke_thumb.png "1956") Japronto:[git项目地址](https://github.com/squeaky-pl/japronto/) ![j.png](https://developer.hs.net/storage/attachments/2021/07/04/CQoGF7oc3Qmznx4tXskV2WyAExquRT2uckd57MPI_thumb.png "1957") Tornado:[Tornado网络异步框架](https://www.tornadoweb.org/en/stable/) ![t.png](https://developer.hs.net/storage/attachments/2021/07/04/cex4JidiNmVCe14qSPXHZL5PvluHPrlbt82lKiF3_thumb.png "1958") (2)爬虫(数据抓取) **技能项**:Scrapy、PySpider、Portia、Beautiful Soup、Cola(分布式爬虫框架)。 **教程推荐:** Scrapy:[Scrapy入门教程](https://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html) ![s.png](https://developer.hs.net/storage/attachments/2021/07/04/jdinVzCfWxANnzHmlQeU2mVOphWLDIApuqfHMMtj_thumb.png "1960") PySpider:[PySpider(蜘蛛)教程](http://docs.pyspider.org/en/latest/) Portia:[Portia官网](https://portiaweb.org.uk/) Beautiful Soup:[中文学习文档](https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/) ![b.png](https://developer.hs.net/storage/attachments/2021/07/04/O7IlPyYWaPOlxgYFPWAt36ibgswGCpcLpgfJVQBW_thumb.png "1961") Cola:[git项目地址](https://github.com/chineking/cola) ![q.png](https://developer.hs.net/storage/attachments/2021/07/04/KnfmDzsMCoNuEe79NGyyiDgevfYKHSOhg2m61aO6_thumb.png "1962") ##### (3)数据分析 **技能项:**NumPy、Scipy、Pandas。 **视频课程推荐:** 恒生LIGHT云社区-【极客时间】: Python金融数据分析系列课程 (1)[数据挖掘基础知识介绍](https://developer.hs.net/thread/1079?nav=course) (2)[学习数据挖掘最佳路径](https://developer.hs.net/thread/1078?nav=course) (3)[常用的数据挖掘主要解决什么问题](https://developer.hs.net/thread/1077?nav=course) (4)[最全数据挖掘常用算法讲解](https://developer.hs.net/thread/1076?nav=course) (5)[经典数据挖掘案例分析](https://developer.hs.net/thread/1075?nav=course) **教程及书籍推荐:** NumPy:[NumPy教程](https://www.runoob.com/numpy/numpy-tutorial.html) Pandas:[Pandas教程](https://www.runoob.com/pandas/pandas-tutorial.html)、[Pandas Git地址](https://github.com/pandas-dev/pandas) ![p.png](https://developer.hs.net/storage/attachments/2021/07/04/mlaORCXGZucVVCUjciTtX063r1WCt9DpSjbX8MSa_thumb.png "1963") 《SciPy and NumPy》 ![SciPy and NumPy](https://img1.doubanio.com/view/subject/s/public/s8985158.jpg) ##### (4)数据可视化 **技能项:**Matplotlib、Seaborn、Bokeh。 **教程参考:** Matplotlib:Matplotlib是NumPy的绘图库,配合NumPy使用。[NumPy Matplotlib教程](https://www.runoob.com/numpy/numpy-matplotlib.html) Bokeh:[bokeh.models.tools](https://docs.bokeh.org/en/latest/docs/reference/models/tools.html) ![bo.png](https://developer.hs.net/storage/attachments/2021/07/04/DqV4tArqtzJXSTHjzG34SBQWXbZE4Y3vPLzRqoAp_thumb.png "1966") ##### (5)人工智能 **技能项:**TensorFlow。 **教程参考:** [TensorFlow教程](https://www.bootwiki.com/tensorflow/index.html) ![ten.png](https://developer.hs.net/storage/attachments/2021/07/04/HCVPD1ZtNFTPryTkXUuils1YbTv6DAIXhvnORjUa_thumb.png "1967") ### 4、工程化和工具 ##### (1)持续集成 CI集成:Jenkins。 Jenkins:[Jenkins官网](、[Git完整命令手册](http://git-scm.com/docs)) ![j.png](https://developer.hs.net/storage/attachments/2021/07/04/SN1MphHzcYID5ecAzNNEkIysozOEdYUR5UlQr7LF_thumb.png "1969") ##### (2)代码质量 Flake8。 ##### (3)版本管理 **工具推荐:**Git、Svn等。 **教程参考:** SVN:[SVN教程](http://www.runoob.com/svn/svn-tutorial.html) GIT:[GIT教程](http://www.runoob.com/git/git-tutorial.html)、[Git完整命令手册](http://git-scm.com/docs) ### 5、测试常用框架 ##### (1)自动化测试 **技能项:**Robot Framework、Pytest。 **教程参考:** Robot Framework:[官方地址](https://robotframework.org/) ![r.png](https://developer.hs.net/storage/attachments/2021/07/04/dzrWRn6znzuMSrHGj8enIXdl4Vj7xGxhCMvF6iy5_thumb.png "1968") Pytest:[Pytest Git 地址](https://github.com/pytest) ##### (2)单元测试 **技能项:**UnitTest/PyUnit。 **教程参考:** PyUnit:[PyUnit教程](http://pyunit.sourceforge.net/) --- ### 总结 对于 Python语言的学习,不像Java开发工程师,Python的学习主要根据方向,有所侧重。Python在数据爬取、分析方面,还有自动化测试及自动化运维发挥着更大的价值! > 本文只是对Python语言方向,给出一个学习路线推荐,仅供参考。 > > 既然选择了程序员行业,持续学习是每个猿必备的技能。 > > 学如逆水行舟,不进则退!! 更多学习路线请见:[开发者学习路线汇总(持续更新)](https://developer.hs.net/thread/1157)
上一篇:MySQL8.0.26安装与卸载


下一篇:Oracle数据库学习笔记_Windows环境新建及配置数据库实例