之前分享了 Java学习路线图,有需要的小伙伴可以点击蓝字查看,这是比较基础的入门学习内容,想要真正成为一名合格的大佬,还是有很多坑需要踩,有许多的内容去学习,这里仅仅起到抛砖引玉。还有许多小伙伴在私信问Python的相关学习路线,那么我就简单的分享一下Python的学习路线,仅供参考。
Python参考就业路线图
第一部分Python基础阶段
- Python开发环境(直接上手Python3)
- Python变量和基本数据结构(字符串、数字、字典、列表、元组等)
- 流程控制、循环(执行顺序,顺序执行、循环执行、选择执行)
- 函数与应用(定义函数、调用函数、函数的嵌套、递归函数)
- 模块和包(标准库和安装三方)
- 面向对象编程(类对象、实例对象、定义类、实例化对象)
- 文件操作(Excel打开、编辑、关闭)
- 异常处理(学会捕捉异常、自定义异常)
Python基础知识跟Java有一些类似,包括流程控制和循环,有相同之处,不过语法有差异,如果之前学习过Java/C/C++ ,那么上手还是比较容易。需要了解模块和包的相关概念,能更加深入的了解Python的便利之处是在于丰富的三方库已经集成了很多的功能,需要安装上相关的库,可以直接使用库的方法。
第二部分Python高级阶段
- 高阶函数(闭包、装饰器、生成器、迭代器)
- 并发编程(线程、进程、协程)
- 数据库编程(三方包的使用)
- Mysql/MongoDB/Redis(需要学习数据库本身)
- Linux操作系统(基本的操作语句)
这部分关联的内容比较多,包括linux操作系统,有基本的了解和命令操作,再者数据库本身,SQL语句等也是学习的内容,包括使用python操作的数据库,如何依赖pymysql等等。不管之后的从业方式是web开发还是数据开发,不可避免的是需要学习数据库和Linux。
第三部分Python Web
- Flask/Django(Python后端框架)
- Models&Templates(模型对应关系、模板加载、静态资源、模板)
- Views(路由规则、反向解析、请求和响应、cookice和session、文件上传下载)
- RESTful(路由语法)
- HTML、CSS、JS(web前端三大件)
- jQuery、Vue(前端框架)
Python也是可以用作web开发,目前web框架有很多,上面说的Flask/Django是比较主流的两款,内容相对来说还是很多的。前端内容是参考学习,如果目标是全栈的话,前端的现在流行的vue是必会项目,做后端的话,也建议了解下前端的三大件是什么,尤其是做爬虫开发的,得会看前端页面的内容。
第四部分Python 爬虫
- 多线程原理(多线程爬取)
- 爬虫概念原理和相关工具(Requst、re、lxml、beautifulsoup库的使用)
- Scrapy框架(框架的原理和使用,沪漂小窝 的爬虫是用此框架写的)
- 定制化爬虫和数据采集存储
爬虫是Python的应用方向之一,其实Java也可以写爬虫,不过由于Python的丰富的库,可以用更少的代码实现功能。而且爬虫目前也是有相关的工作,但是想要成为爬虫工程师需要不仅仅是这些,还可能用到selenium 框架、以及反爬机制的破解等等。
第五部分数据挖掘分析
- 基本概念(顺序表、链表、栈、队列)
- 数据排序(排序、树算法)
- 数据操作(读取存储,从DB、文件)
- Numpy(数学函数库)
- Pandas(数据处理)
- Matpoltlib(数据可视化的概念)
数据分析三剑客Numpy/Pandas/Matplotlib常规使用和组合操作是数据分析工程或者很多公司的Python开发工程师必会的知识点。还要其数据可视化,比如wordcloud等,Python的库中都提供,不过数据分析的重点是在处理上,包括数据清洗、运算,最后的展示可以直接引用个包来解决,这就是Python的便利之处。
这里需要学习的是怎么使用三剑客,以及三剑客能做什么,别看这部分字少,但是内容还是很多的。
学习到这里,去公司找个Python开发的相关工作已经不是大问题的,但是目前来说,纯Python开发的市场需求并不是像广告宣传的那么火热。正是因为它的应用面广,所以各种广告都会拿来当噱头。
第六部分深度学习以及机器学习
- 特征工程(了解人工智能、机器学习、深度学习以及特征工程)
- 监督学习分类算法(熟悉监督学习分类算法,以下几种)
- KNN(临近算法、预处理、KNN相关函数)
- 线性回归与逻辑回归
- 决策树与贝叶斯
- SVM与K均值聚类
- 机器学习框架TensorFlow
- 自然语言处理与社交网络处理
上面所述不仅仅这些还有很多的机器学习算法分类,比如说想最简单的文本分类(诈骗短信、营销短信),使用自然语言处理,属于比较高端的岗位掌握的知识,学习到这里至少得有个三两年的基础。那个时候你也会对这门语言有所研究,如果没有中途放弃的话。路漫漫其修远兮,加油吧。
学习网站视频
0.菜鸟教程(文档相当于字典,查询)
https://www.runoob.com/python3/python3-tutorial.html
1.python中文学习大本营(文档):
http://www.pythondoc.com
2.1.python基础(视频):
https://www.bilibili.com/video/av58530260
2.2.Python基础(练习):
https://www.imooc.com/learn/1261
3.1.Python进阶(视频):
https://www.bilibili.com/video/bv1jz411b7DH
3.2.Python进阶(练习):
https://www.imooc.com/learn/1264
4.1Python爬虫(文档):
https://www.bilibili.com/video/BV1Yh411o7Sz
4.2Python爬虫(练习)
沪漂小窝 (使用Scrapy框架)
5.Django(视频):
https://www.imooc.com/learn/1110
6.数据分析(Numpy & Pandas)(视频)
https://www.bilibili.com/video/BV1Ex411L7oT
7.机器学习(视频):
https://www.bilibili.com/video/BV17J411C7zZ
第三方库:
https://pypi.org/
这里可以搜到你所有需要的三方库,包括使用安装说明,网站是英文(外网),访问你懂得。
参考图书:
1.Python编程 从入门到实践(零基础)
2.Python基础教程(第三版)(有其他语言基础)
3.Effective Python:编写高质量Python(进阶,有一定基础)
4.Python极客项目编程(经典实践项目)
5.机器学习 (高阶操作参考)
以上几本书难度使用依次增加,但是正版的书都比较贵,如果想买的话可以赶上618或者双11搞活动,建议一本一本的买,看完再买下一本,不然就容易吃灰。
Python应用领域比较广,也是意味着不需要全部都学,可以挑选你感兴趣的方向,上面罗列的几个方面是比较有代表性的方向,不管哪个方向都是需要把基础打好,学习编程是一个循序渐进的过程,一口吃不成胖子。
总结一句话,视频难度低,图书难度高,入门可以先看视频,后面可以选择看书,最后重点是直接上手撸代码,没别的捷径。
PS:有学会计的同学问我,怎么天天给我推荐学Python的广告,我说是割你韭菜的。Python语言的学习成本低,是相对于其他语言而说,而不是对于任何行业的人来说,但是话说回来,Python确实可以做很多的Excel的自动化处理,如果作为其他行的人能掌握编程语言来工作,那也是给你升职加薪做铺垫。
如果非程序员想学下,先把基础知识相关的了解一下,不吃力的话,学习使用pyopenxl可以处理简单的数据,想要复杂的运算需要学习数据分析三剑客,比起来难度也是有的。