百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

Python库大全(上)Python的所有库都在这里了,建议收藏

toyiye 2024-06-21 12:23 9 浏览 0 评论

什么是Python

Python作为当然最热门的编程语言之一,拥有超高的人气,随着大数据和人工智能的发展,Python也与多种科技深深绑定。

什么是Python库

从代码角度讲:库就是一堆类(class)和函数(function)的集合。

从应用角度讲:库类似生活中的工具箱,箱子里有很多做其他事情必不可少的工具。举一个例子,如果你想抓取某网站的数据或图片,那么你就需要能处理相关底层网络连接的代码,而这些代码都已经被写好了,你只需要调用库里的函数或类,能够提高开发效率。

面对不同的情况,自然需要不同的工具箱,那么,都有哪些Python库呢?




大数据与科学计算

pycuda/opencl : GPU高性能并发计算Pandas,python实现的类似R语言的数据统计、分析平台。基于NumPy和Matplotlib开发的,主要用于数据分析和数据可视化,它的数据结构DataFrame和R语言里的data.frame很像,特别是对于时间序列数据有自己的一套分析机制,非常不错;

Open Mining : 商业智能(BI),Pandas的Web界面。blaze,NumPy和Pandas大数据界面。 SciPy,开源的Python算法库和数学工具包,SciPy包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算;

ScientificPython : 一组经过挑选的Python程序模块,用于科学计算,包括几何学(矢量、张量、变换、矢量和张量场),四元数,自动求导数,(线性)插值,多项式,基础统计学,非线性最小二乘拟合,单位计算,Fortran兼容的文本格式,通过VRML的3D显示,以及两个Tk小工具,分别用于绘制线图和3D网格模型。 此外还具有到netCDF,MPI和BSPlib库的接口;

NumPy : 科学计算库,提供了矩阵,线性代数,傅立叶变换等等的解决方案, 最常用的是它的N维数组对象. NumPy提供了两种基本的对象: ndarray(N-dimensional array object)和 ufunc(universal function object;

ndarray : 是存储单一数据类型的多维数组,而ufunc则是能够对数组进行处理的函数。 Cvxopt,最优化计算包,可进行线性规划、二次规划、半正定规划等的计算。 Numba,科学计算速度优化编译器。pymvpa2,是为大数据集提供统计学习分析的Python工具包,它提供了一个灵活可扩展的框架;

PyDy : Python动态建模函数库

SymPy : 符号数学的Python库

statsmodels : Python的统计建模和计量经济学

astropy : 天文学界的Python库

orange : 橙色,数据挖掘,数据可视化,通过可视化编程或Python脚本学习机分析;

RDKit : 化学信息学和机器学习的软件

Open Babel : 巴贝尔,开放的化学工具箱;

cclib : 化学软件包的计算函数库

Biopython : 免费的生物计算工具包

bccb : 生物学分析相关的代码集

bcbio-nextgen : 提供完全自动化、高通量、测序分析的工具包;

visvis : 可视化计算模块库,可进行一维到四维数据的可视化;

MapReduce : 是Google提出的一个软件[架构],用于大规模数据集(大于1TB)的并行运算。 概念“Map(映射)”和“Reduce(归纳)”,及他们的主要思想,都是从函数式编程语言借来的MapReduce函数库。Framworks and libraries for MapReduce.,PySpark,[Spark]的Python API。dpark,Spark的Python克隆,Python中的MapReduce框架。luigi,为批量工作,建立复杂的管道。mrjob,运行在[Hadoop],或亚马逊网络服务的,MapReduce工作。




人工智能与机器学习

NLTK(natural language toolkit) : 是python的自然语言处理工具包。2001年推出,包括了大量的资料库,以及自然语言处理方面的算法实现: 分词, 词根计算, 分类, 语义分析等;

Pattern : 数据挖掘模块,包括自然语言处理,机器学习工具,等等;

textblob : 提供API为自然语言处理、分解NLP任务。基于NLTK和Pattern模块;

jieba : 结巴,中文分词工具。snownlp,用于处理中文文本库;

loso : 中文分词函数库

genius : 中文CRF基础库,条件随机场(conditional random field,简称 CRF),是一种鉴别式机率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列Gensim。一个相当专业的主题模型Python工具包,无论是代码还是文档,可用于如何计算两个文档的相似度LIBSVM。

scikits.learn : 构建在SciPy之上用于机器学习的 Python 模块。它包括简单而高效的工具,可用于数据挖掘和数据分析;

PyMC : 主要用来做Bayesian分析。Orange,基于组件的数据挖掘和机器学习软件套装,它的功能即友好,又很强大,快速而又多功能的可视化编程前端,以便浏览数据分析和可视化,包含了完整的一系列的组件以进行数据预处理,并提供了数据帐目,过渡,建模,模式评估和勘探的功能;

Milk : 机器学习工具箱,其重点是提供监督分类法与几种有效的分类分析:SVMs(基于libsvm),K-NN,随机森林经济和决策树。

PyMVPA(Multivariate Pattern Analysis in Python) : 是为大数据集提供统计学习分析的Python工具包,它提供了一个灵活可扩展的框架。它提供的功能有分类、回归、特征选择、数据导入导出、可视化等NuPIC,开源人工智能平台;

hebel : GPU加速,[深度学习]Python库;

gensim : 机器学习库

pybrain : 机器学习模块,它的目标是为机器学习任务提供灵活、易应、强大的机器学习算法;

pybrain : 包括神经网络、强化学习(及二者结合)、无监督学习、进化算法。以神经网络为核心,所有的训练方法都以神经网络为一个实例Mahout,是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序;

Mahout : 包含许多实现,包括聚类、分类、推荐过滤、频繁子项挖掘。此外,通过使用 Apache Hadoop 库,Mahout 可以有效地扩展到云中;

Crab : 灵活的,快速的推荐引擎。python-recsys,娱乐系统分析,推荐系统。vowpal_porpoise,Vowpal Wabbit轻量级Python封装;

Theano : 用来定义、优化和模拟数学表达式计算,用于高效地解决多维数组的计算问题的python软件包。它使得写深度学习模型更加容易,同时也给出了一些关于在GPU上训练它们的选项;




数据分析

Chardet : 字符编码探测器,可以自动检测文本、网页、xml的编码;

colorama : 主要用来给文本添加各种颜色,并且非常简单易用;

Prettytable : 主要用于在终端或浏览器端构建格式化的输出

difflib : Python标准库,计算文本差异;

Levenshtein : 快速计算字符串的相似度

fuzzywuzzy : 字符串模糊匹配

esmre : 正则表达式的加速器

shortuuid : 一组简洁URL/UUID函数库

ftfy : Unicode文本工具7

unidecode : ascii和Unicode文本转换函数

xpinyin : 将汉字转换为拼音的函数库

pangu.py : 调整对中日韩文字当中的字母、数字间距;

pyfiglet : Python写的figlet程序,使用字符组成ASCII艺术图片;

uniout : 提取字符串中可读写的字符

awesome slugify :一个Python slugify库,用于处理Unicode。

python-slugify : 转换Unicode为ASCII内码的slugify函数库

unicode-slugify : 生成unicode内码,Django的依赖包。

ply : Python版的lex和yacc的解析工具

phonenumbers : 解析电话号码,格式,存储和验证的国际电话号码

python-user-agents : 浏览器的用户代理(user-agents)的解析器

sqlparse : SQL解析器

pygments : 一个通用的语法高亮工具

python-nameparser : 解析人名,分解为单独的成分;

pyparsing : 通用解析器生成框架

tablib : 表格数据格式,包括,XLS、CSV,JSON,YAML;

python-docx : docx文档读取,查询和修改,微软Word 2007 / 2008的docx文件;

xlwt/xlrd : 读写Excel格式的数据文件

xlsxwriter : 创建Excel格式的xlsx文件

xlwings : 利用Python调用Excel

csvkit : CSV文件工具包

marmir : 把Python[数据结构],转化为电子表格;

pdfminer : 从PDF文件中提取信息

pypdf2 : 合并和转换PDF页面的函数库

Python-Markdown : 轻量级标记语言Markdown的Python实现

Mistune : 快速、全功能的纯Python编写的Markdown解释器;

dateutil : 标准的Python官方datetime模块的扩展包,字符串日期工具,其中parser是根据字符串解析成datetime,而rrule是则是根据定义的规则来生成datetime;

arrow : 更好的日期和时间处理Python库

chronyk : 一个Python 3版函数库,用于解析人写的时间和日期;

delorean : 清理期时间的函数库

when.py : 为见的日期和时间,提供人性化的功能;

moment : 类似Moment.js的日期/时间Python库

pytz : 世界时区,使用tz database时区信息[数据库] ;

BeautifulSoup : 基于Python的HTML/XML解析器,简单易用, 功能很强大,即使是有bug,有问题的html代码,也可以解析;

lxml : 快速,易用、灵活的HTML和XML处理库,功能超强,在遇到有缺陷、不规范的xml时,Python自带的xml处理器可能无法解析。报错时,程序会尝试再用lxml的修复模式解析;

htmlparser : 官方版解析HTML DOM树,偶尔搞搞命令行自动表单提交用得上;

pyyaml : Python版本的YAML解释器

html5lib : 解析和序列化HTML文档和片段

pyquery : 类似[jQuery]的的HTML解释器函数库

cssutils : Python CSS库

MarkupSafe : XML或HTML / XHTML安全字符串标记工具

cssutils - ACSS library for Python., MarkupSafe - Implements a XML/HTML/XHTML bleach : 漂白,基于HTML的白名单函数库;

xmltodict : 类似JSON的XML工具包

xhtml2pdf : HTML / CSS格式转换器,看生成pdf文档;

untangle : 把XML文档,转换为Python对象,方便访问;




文件处理

Mimetypes : Python标准库,映射文件名到MIME类型;

imghdr : Python标准库,确定图像类型。python-magic,libmagic文件类型识别库,Python接口格式。path.py,os.path模块的二次封装;

watchdog : 一组API和shell实用程序,用于监视文件系统事件;

Unipath : 面向对象的文件/目录的操作工具包

pathlib : (Python 3.4版已经作为Python标准库),一个跨平台,面向path的函数库;

pickle/cPickle : python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象;

cPickle : 是[C语言]实现的版本,速度更快;

ConfigParser : Python标准库,INI文件解析器;

configobj : INI文件解析器。config,分层次配置,logging作者编写;

profig : 多格式配置转换工具

logging : Python标准库,日志文件生成管理函数库;

logbook : logging的替换品

Sentry : 实时log服务器。Raven,哨兵Sentry的Python客户端;

Sphinx : 斯芬克斯(狮身人面像),Python文档生成器;

reStructuredText : 标记语法和解析工具,Docutils组件。mkdocs,Markdown格式文档生成器;

pycco : 简单快速、编程风格的文档生成器;

pdoc : 自动生成的Python库API文档epydoc,从源码注释中生成各种格式文档的工具;




图像处理

PIL(Python Image Library) : 基于Python的图像处理库,功能强大,对图形文件的格式支持广泛,内置许多图像处理函数,如图像增强、滤波[算法]等Pillow,图像处理库,PIL图像库的分支和升级替代产品。Matplotlib,著名的绘图库,提供了整套和matlab相似的命令API,用以绘制一些高质量的数学二维图形,十分适合交互式地进行制图。brewer2mpl,有一个专业的python配色工具包,提供了从美术角度来讲的精美配色;

PyGame : 基于Python的多媒体开发和游戏软件开发模块,包含大量游戏和图像处理功能Box2d,开源的2d物理引擎,愤怒的小鸟就是使用了这款物理引擎进行开发的,Box2d物理引擎内部模拟了一个世界,你可以设置这个世界里的重力,然后往这个世界里添加各种物体,以及他们的一些物理特性,比如质量,摩擦,阻尼等等;

Pymunk : 类似box2d的开源物理图形模拟库OpenCV, 目前最好的开源图像/视觉库,包括图像处理和计算机视觉方面、[机器学习]的很多通用算法。SimpleCV,计算机视觉开源框架,类似opencv。VTK,视觉化工具函式库(VTK, Visualization Toolkit)是一个开放源码,跨平台、支援平行处理(VTK曾用于处理大小近乎1个Petabyte的资料,其平台为美国Los Alamos国家实验室所有的具1024个处理器之大型系统)的图形应用函式库;

Aggdraw : 开源图像库,几乎涵盖了2d image操作的所有功能,使用起来非常灵活Pycairo,开源矢量绘图库Cairo开罗的python接口,cairo提供在多个背景下做2-D的绘图,高级的更可以使用硬件加速功能。wand,Python绑定魔杖工具(MagickWand),C语言API接口;

thumbor : 智能成像工具,可调整大小和翻转图像;

imgSeek : 查询相似的图像

python-qrcode : 纯Python的二维码(QR码)生成器

pyBarcode : 创建条码,无需PIL模块;

pygram : Instagram 像图像过滤器

Quads : 基于四叉树的计算机艺术

nude.py : 裸体检测函数

scikit-image : scikit工具箱的图像处理库

hmap : 图像直方图工具

bokeh : 交互的Web绘图

plotly : Web协同的Python和Matplotlib绘制

vincent : 文森特,Python Vega的函数库

d3py :Python绘图库,基于D3.JS, ggplot -API兼容R语言的ggplot2.Kartograph.py,在Python绘制漂亮的SVG地图。pygal, SVG图表的创造者;

pygraphviz : Graphviz的Python接口

Fonttlools : ttf字体工具函数包,用于fontforge、ttx等字体软件;




数据库

MySQLdb : 成熟的[MySQL]数据库模块

Baresql : SQL数据库包ZODB,Python本地对象数据库,一个K-V对象图数据库;

pickledb : 简单和轻量级的K-V键值存储

TinyDB : 轻量级,面向文档的数据库;

mysql-python : MySQL的Python工具库

mysqlclient : mysql-python分支,支持Python 3

PyMySQL : 纯Python写的 MySQL驱动程序,兼容mysql-python;

mysql-connector-python : MySQL连接器,来自[Oracle],纯Python编写;

oursql : MySQL连接器,提供本地话指令语句和BLOBs支持;

psycopg2 : 最流行的Python PostgreSQL适配器

txpostgres : 于Twisted的异步驱动,用于PostgreSQL;

queries : psycopg2函数库,用于PostgreSQL;

dataset : 存储Python字典数据,用于SQLite,MySQL和PostgreSQL;

cassandra-python-driver : 开源分布式NoSQL数据库系统Apache Cassandra系统的Python驱动

pycassa : 简化的cassandra数据库Python驱动

HappyBase : 友好的Apache [Hbase]的函数库

PyMongo : MongoDB官方客户端

plyvel : LevelDB快速和功能丰富的Python接口

redis-py : redis客户端

py2neo : Python客户端(基于Neo4j的RESTful接口)

telephus : 基于Twisted的cassandra客户端

txRedis : 基于Twisted的Redis客户端

本篇介绍六种Python库,由于篇幅原因,其余内容下期更新。

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码