做者:[已重置]
连接:https://zhuanlan.zhihu.com/p/26054228
来源:知乎
著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。
web
阅读本文大概须要5分钟正则表达式
Python之因此这么流行,这么好用,就是由于Python提供了大量的第三方的库,开箱即用,很是方便,并且还免费哦,那么Python中到底有哪些黄金般的库呢,今天咱们就来给你们讲一讲,学会了这些库不只对提升你的功力大有裨益,并且还能涨工资,无论你信不信,反正我是信了~~哈哈算法
学Python的同窗里估计有30%以上是为了作数据分析师或者数据挖掘,因此数据分析相关的库,你必定要知道(也许有同窗会问数据分析的工具不少有R,MATLAB,SAS,Stata,为啥要用Python,这个问题回答估计要说一壶,我年后讲数据分析的时候,会详细讲解)shell
NumPy是Python科学计算的基础包,它提供:数据库
1).快速高效的多维数组对象ndarray;编程
2).直接对数组执行数学运算及对数组执行元素级计算的函数;数组
3).用于读写硬盘上基于数组的数据集的工具缓存
4).线性代数运算、傅里叶变换,以及随机数生成服务器
大名鼎鼎的Pandas能够说只要作数据分析的,无人不知无人不晓,由于它过重要了.Pandas库提供了咱们不少函数,可以快速的方便的,处理结构化的大型数据,不夸张的说,Pandas是让Python成为强大的数据分析工具的很是重要的一个因素.框架
并且对于金融行业,好比基金股票的分析师来讲,pandas提供了高性能的时间序列功能和一系列的工具,能够自由的灵活的处理数据,一次使用你就会爱上它.
matplotlib是最流行的用于绘制数据图表的Python库,它和下面咱们要讲的 IPython结合的很爽,绝对是好基友,提供了一种很是好用的交互式的数据绘图环境.
IPython是Python科学计算标准工具集的组成部分,它能够把不少东西联系到一块儿,有点相似一个加强版的Python shell.
目的是为了提升编程,测试和调试Python代码的速度,好像不少国外的大学教授,还有Google大牛都很喜欢用IPython,确实很方便,至少我在分析数据的时候,也是用这个工具的,并且不用print,回车就能打印
如今人工智能很是火爆,机器学习应该算是人工智能里面的一个子领域,而其中有一块是对文本进行分析,对数据进行深刻的挖掘提取一些特征值,而后用一些算法去学习,训练,分析,甚至还能预测.
打个比方吧,你们都知道瑞雪兆丰年,其实下雪和丰收没有什么联系,可是经过大量的数据分析,发现只要有瑞雪,来年丰收的几率就很是大,因而就用了瑞雪兆丰年的谚语.扯远了,咱们回来继续说:
天然语言处理里面赫赫有名的就是NLTK全称叫天然语言工具包(Natural Language Tookit),里面包含了大量的函数模块,能够获取语料库,字符串的处理,词性的解析,分类,语义解释,几率分析还有评估.
Python社区里面机器学习模块sklearn,内置了不少算法,几乎实现了全部基本机器学习的算法。
它主要包括6个方面:分类,回归,聚类,数据降维,模型选择,数据预处理.补充说一句里面的大量的算法都和数据有关,若数学基础很差的,可能会有一些吃力.
这一块基本都和网页打交道,不管是你本身搭建一个网站仍是爬别人的网站,下面几个库是必需要知道的
beautifulsoup4,urllib2,lxml,requests
上面几个库能够说是学习Python爬虫必备的库,必需要掌握,固然有的同窗说我爬网页不是也能够用正则表达式吗,确实能够可是会很不方便,由于bs4和lxml都有便捷的接口,通常咱们都是和正则结合使用,若是对速度有要求的话,建议用lmxp,它比bs4 速度要快不少
爬虫的世界里面有没有懒人专用的框架~~固然有啦,scrapy就是其中比较有名的,能够快速,高层次的web抓取网页,并从web站点的页面中提取结构化的数据
Scrapy用途普遍,能够用于数据挖掘、监测和自动化测试.最爽的就是它是一个框架,任何人均可以根据需求方便的修改,里面有不少类型爬虫的基类,如BaseSpider、sitemap爬虫等
Django算是Python web框架里重量级的选手,主要是由于它提供了一站式的解决方案,包括缓存,ORM,后台管理,验证,表单等等,是的开发复杂的数据库驱动的网站变的很简单,并且有很是齐备的官方文档
Flask设计的理念跟Django彻底相反,它是轻量级Web应用框架的表明.它只保留核心的功能,其余的功能都是能够变更,能够扩展的,你能够更加直接的需求灵活搭配
Tornado全称叫Tornado Web Server,目前是Facebook开源的一个版本,它和其余主流的框架有一个很是明显的区别:就是非阻塞式服务器,速度很是快.特别对于长轮询,WebSocket等实时要求高的web服务来讲是一个福音,基本能够和Node.js一决高下.
好了Python的黄金库就讲到这里啦,我以为虽然库的学习当然很重要,可是最重要的是你须要知道本身为何要学这些库,你到底要解决哪一个领域的事情,由问题驱动去学习是比较好的方法(我的建议仅供参考)