导读
可以说,在写这篇文章之前,我一直在考虑,这个文章是不是我可以写出来的,因为我不是专业大咖也不是行业大牛,只是一个很普通的学生甚至还不是计算机系的学生。后来想一想其实还是很有必要,因为我想也许有很多人和我一样想走近这门编程语言,而那些大咖的分享往往都是站在一个制高点上,虽然很有道理却有很多不切和我们这些非科班出身的人。这篇指南是我在Python学习小有成就,并能通过Python编程小赚一笔的情况下,对于3年的断断续续python学习作出的学习指南。希望通过这篇指南你能够有所收获,公众号基本建设之后,主打的Python每日学习,你也可以在这里收获到你想要的知识点式的每日提升,最后祝你学有所成,事事顺利,那么就让我们一起走进Python的世界。
Python简介
这几年Pyhton真的是火爆了,每个公众号/教育平台基本你都能看到Python的广告,Python语言以简易,功能强大两大特点几乎称霸了编程语言,数据分析,人工智能,爬虫等等等用Python进行编程意外的好用,加上树莓派的逐渐普及更是带来了Python在硬件方向的应用,除了运行慢几乎Python没有任何的弱点了,因此才受到了诸多学者的偏爱,除此之外Python的库和Python的社区环境很活跃也为这门语言的持久力注入了力量,让这门语言逐渐发展的势不可挡。
Python学习路线
学习流程
python涉及的知识点十分广泛,正如上图所示,可以说学完了Python基础以后,走不同的分支就会有不一样的岗位,不一样的工作,就和我们之前所述的后期指南哪一篇,如果你要想变成业界大咖,就应该在学习基本的之后专攻一个方向。
推荐的学习流程:
一.基础方面:
1.python语言基础:Python3入门,数据类型,变量,运算符合表达式,判断/循环语句,函数,类与对象,继承,多态,封装,文件读写与存储,异常处理,正则表达式,多线程/多进程方法。
2.算法基础:抽象数据类型,渐进分析,二叉搜索树,哈希,队列/栈结构,树,排序算法,图的遍历,图论,最短路径,动态规划等内容。
3.其他基础:Linux操作基础,关系型数据库基础,Web前端基础,JavaScript基础(爬虫必学),数学基础(尤其是机器学习/神经网络,一定要学好高数,线性代数)
二.进阶方面:
1.网络爬虫工程师****(15k左右):
首先爬虫是一个下限很低,上限极高的一个学习方向,入门爬虫十分简单,你甚至可以只利用request,正则表达式就能轻易的爬取某个网站,因为它的逻辑十分简单,即使是一个小白也能在很短时间内掌握,可为什么又说他的上限极高呢,就是因为日常爬取和岗位要求是两回事,比如常见的如何绕过复杂的认证,HTTP协议,分布式结构的应用,各类形式的JS加密等等,这些就是他上限极高的原因,这些东西都涉及很多方面的知识,因此需要你不断学习。
这些东西我持续学习了一年的时间,并在我的CSDN把学习心得以文章的形式进行了分享,有兴趣的可以去看一下:
https://blog.csdn.net/AI_LINNGLONG
(1)爬虫流程:
请求:
请求获取网站资源
响应:
如果网站返回 status_code 是200,服务器就会返回资源
解析:
Parser 来解析我们得到的资源(数据清洗)
可以用来解析的库
BeautifulSoup
PyQuery
Xpath
Re (正则表达式)
入库:存储我们需要的资源
(2)爬虫分类:
全网爬虫,主题爬虫,增量式爬虫和深层爬虫。
(3)作为爬虫工程师,需要你掌握:
爬虫开发网络基本知识,计算机网络基础,Fiddler等工具,Request,BeautifulSoup,Scrapy,Selenium,文件存储(包括关系型数据库),GIL锁,多进程/多线程方法,异步方法,分布式方法,常见的反爬虫破解方法(如字体反爬,防盗链,目录数据加载,数据加密等)。
2.数据分析工程师****(8k-30k):
首先数据分析并不是Python独大的,往往要求是Excel,SQL必会,Python,Matlab,R为加分项,当然Python其实在某些下的确很优雅很美观,个人曾经做过某所大学的大数据专业的课程设计,整体说来就是数据获取(爬虫或商业数据),储存入库(Excel,Mysql),数据清洗,数据可视化的过程,这几门技能除了R语言我接触不多剩下的我都有接触,可Python却还是我最喜欢的一种方式。
(1)数据分析流程:
(2)作为数据分析师,需要你掌握:
Numpy,Pandas,Matplotlib(数据可视化),Scipy,Tushare(金融必学),Hadoop HDFS,Spark core,Spark SQL,Spark MLlib,一定的机器学习基础( scikit-learn)等。
3.机器学习工程师(15k-35k)****:
首先,机器学习是一门很高深的学问,也就是下限很高的一个学习路线,你不但要有编程知识,还需要你对于数学/算法具有很高的理解才可以,所以每个想学习或者入手机器学习的都应该学好数学,并且机器学习包含的领域也很广泛,比如就包含其中最受欢迎的深度学习。
(1)作为机器学习工程师,需要你掌握:
机器学习基础知识,KNN算法,线性回归,逻辑回归,神经网络,决策树算法,朴素贝叶斯算法,支持向量机,聚类k-means算法,树莓派基础相关知识等。
Python推荐链接
吴恩达的机器学习课程(cousera)
Python for everybody(cousera)
Python资料 公众号回复【Python资料】获取
关注我
扫码关注我们
凌云天下事
哔哩哔哩:凌动俱乐部
♬..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
♫. ♪ ~ ♬..♩~ ♫. ♪..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
网友评论