Python模块汇总(常用第三方库)

模块

定义

计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里。在python里,一个.py文件就是一个模块

优点:

提高代码的可维护性。
提高代码的复用,当模块完成时就可以在其他代码中调用
引用其他模块,包含python内置模块和其他第三方模块
避免函数名和变量名等名称冲突

Python语言生态

Python语言提供超过15万个第三方库,Python库之间广泛联系、逐层封装。

使用pip安装
Python社区:https://pypi.org/

python标准库:

sys模块
random模块
os模块:
os.path:讲解
https://www.nhooo.com/article/159730.htm
time模块:
turtle模块:
教程:https://www.nhooo.com/article/171752.htm

数据可视化

1.matplotlib :
提供了2维可视化功能库,是Python可视化程序库的泰斗,它的设计和在1980年代被设计的商业化程序语言MATLAB非常接近。比如pandas和Seaborn就是matplotlib的外包,它们让你能用更少的代码去调用 matplotlib的方法。

访问:

https://matplotlib.org/

颜色:

https://www.nhooo.com/article/136566.htm

教程:

https://wizardforcel.gitbooks.io/matplotlib-user-guide/3.1.html

2.Seaborn:
它是统计类数据可视化功能库

访问:

http://seaborn.pydata.org/index.html

3.ggplot:

gplot 跟 matplotlib 的不同之处是它允许你叠加不同的图层来完成一幅图

访问:
http://ggplot.yhathq.com/

4.Mayavi:

Mayavi2完全用Python编写,因此它不但是一个方便实用的可视化软件,而且可以方便地用Python编写扩展,嵌入到用户编写的Python程序中,或者直接使用其面向脚本的API:mlab快速绘制三维图

访问:http://code.enthought.com/pages/mayavi-project.html

讲解:https://blog.csdn.net/ouening/article/details/76595427https://www.jianshu.com/p/81e6f4f1cdd8

5.TVTK:
TVTK库对标准的VTK库进行包装,提供了Python风格的API、支持Trait属性和numpy的多维数组。
VTK (http://www.vtk.org/) 是一套三维的数据可视化工具,它由C++编写,包涵了近千个类帮助我们处理和显示数据

讲解:https://docs.huihoo.com/scipy/scipy-zh-cn/tvtk_intro.html

数据分析
教程

https://docs.huihoo.com/scipy/scipy-zh-cn/index.html#

1.numpy
表达N维数组的最基础库

访问

http://www.numpy.org/

讲解

https://www.nhooo.com/article/130031.htm

2.sympy

sympy是一个Python的科学计算库,用一套强大的符号计算体系完成诸如多项式求值、求极限、解方程、求积分、微分方程、级数展开、矩阵运算等等计算问题
访问

https://docs.sympy.org/0.7.1/guide.html#guide

讲解

https://www.nhooo.com/article/158566.htm

 解方程

https://www.nhooo.com/article/171754.htm

3.SciPy
数学、科学、工程计算功能库

官网

https://www.scipy.org/

讲解

https://www.nhooo.com/article/171758.htm

4.pandas
Python数据分析高层次应用库

官网

http://pandas.pydata.org/

讲解

https://www.nhooo.com/article/171762.htm

5.blaze

官网

http://blaze.readthedocs.io/en/latest/index.html

文本处理
pyPDF2:用于处理PDF文件的工具集

Python-docx:操作Microsoft Word 文件的第三方库

图像处理

bigmoyan

http://scikit-image.org/
Python Imaging Library(PIL)

http://www.pythonware.com/products/pil/

pillow:

http://pillow.readthedocs.io/en/latest/

Quads

迭代的艺术

ascii_art:ASCII艺术库

turtle:Python标准库机器学习1.Scikit-learn是一个简单且高效的数据挖掘和数据分析工具,易上手,可以在多个上下文中重复使用。它基于NumPy, SciPy 和 matplotlib,开源,可商用(基于 BSD 许可)。

访问:

讲解:https://www.nhooo.com/article/171765.htm

2.Tensorflow

最初由谷歌机器智能科研组织中的谷歌大脑团队(Google Brain Team)的研究人员和工程师开发。该系统设计的初衷是为了便于机器学习研究,能够更快更好地将科研原型转化为生产项目。

3.MXNet:

基于神经网络的机器学习计算框架

网络相关

网络爬虫
requests
最友好的网络爬虫功能库

访问:http://www.python-requests.org/

scrapy

优秀的网络爬虫框架

访问:https://scrapy.org/

pyspider

强大的Web页面爬取系统

https://github.com/binux/pyspider

Web信息提取

BeautifulSoup
HTML和XML的解析库

访问:https://www.crummy.com/software/BeautifulSoup/

Python-Goose:
提取文章类型Web页面功能库

示例:

Web网站开发

Django:
最流行的Web应用框架

框架:

Pyramid:
规模适中的Web应用框架

示例:

Flask:
Web应用微框架

示例:

1.Tornado

访问:http://www.tornadoweb.org/en/stable/

3.Web.py

访问:http://webpy.org/

5.cherrypy

http://cherrypy.org/

6.jinjs

http://docs.jinkan.org/docs/jinja2/

网络应用开发

WeRoBot:
微信公众号开发框架

示例:

访问:https://github.com/offu/WeRoBot

教程:https://werobot.readthedocs.io/zh_CN/latest/

aip:

百度AI开放平台接口

功能:

访问:

MyQR:
二维码生成第三方库

GUI 图形用户界面

1.Tkinter

https://wiki.python.org/moin/TkInter/

2.wxPython
跨平台GUI开发框架

访问:https://www.wxpython.org/

示例:

3.PyGTK

http://www.pygtk.org/

4.PyQt5:
Qt开发框架的Python接口

5.PySide

http://wiki.qt.io/Category:LanguageBindings::PySide

6.PyGObject:
使用GTK+开发GUI的功能库

示例:

戏开发

PyGame:
简单的游戏开发功能库

Panda3D开源、跨平台的3D渲染、游戏开发平台

cocos2d开发2D游戏和图形界面交互式应用的开发框架

虚拟现实VR Zero树莓派上开发VR应用的Python库

访问:https://github.com/WayneKeenan/python-vrzero

pyovr

Oculus rift 的Python开发接口

Vizard基于Python的通用VR开发引擎

密码学

1.cryptography
https://pypi.python.org/pypi/cryptography/
2.hashids
http://www.oschina.net/p/hashids
3.Paramiko
http://www.paramiko.org/
4.Passlib
https://pythonhosted.org/passlib/
5.PyCrypto
https://pypi.python.org/pypi/pycrypto
6.PyNacl
http://pynacl.readthedocs.io/en/latest/
自然语言处理
1.nltk: 自然语言文本处理第三方库
http://www.nltk.org/

2.snownlp

https://github.com/isnowfy/snownlp

3.Pattern

https://github.com/clips/pattern

4.TextBlob

http://textblob.readthedocs.io/en/dev/

5.Polyglot

https://pypi.python.org/pypi/polyglot

6.jieba:

https://github.com/fxsjy/jieba

数据库驱动

mysql-python

https://sourceforge.net/projects/mysql-python/

PyMySQL

https://github.com/PyMySQL/PyMySQL

PyMongo

https://docs.mongodb.com/ecosystem/drivers/python/

pymongo
MongoDB库

访问:https://pypi.python.org/pypi/pymongo/

redis
Redis库

访问:https://pypi.python.org/pypi/redis/

cxOracle
Oracle库

访问:https://pypi.python.org/pypi/cx_Oracle

SQLAlchemy
SQL工具包及对象关系映射(ORM)工具

访问:http://www.sqlalchemy.org/

peewee,
SQL工具包及对象关系映射(ORM)工具

访问:https://pypi.python.org/pypi/peewee

torndb
Tornado原装DB

访问:https://github.com/bdarnell/torndb

其他库暂未分类

1.PyInstaller:
是一个十分有用的第三方库,它能够在Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。
2.Ipython
一种交互式计算和开发环境
讲解
https://www.cnblogs.com/zzhzhao/p/5295476.html
命令
ls、cd 、run、edit、clear、exist