最常用的几个python库

Python018

最常用的几个python库,第1张

Python常用库大全,看看有没有你需要的。

环境管理

管理 Python 版本和环境的工具

p – 非常简单的交互式 python 版本管理工具。

pyenv – 简单的 Python 版本管理工具。

Vex – 可以在虚拟环境中执行命令。

virtualenv – 创建独立 Python 环境的工具。

virtualenvwrapper- virtualenv 的一组扩展。

包管理

管理包和依赖的工具。

pip – Python 包和依赖关系管理工具。

pip-tools – 保证 Python 包依赖关系更新的一组工具。

conda – 跨平台,Python 二进制包管理工具。

Curdling – 管理 Python 包的命令行工具。

wheel – Python 分发的新标准,意在取代 eggs。

包仓库

本地 PyPI 仓库服务和代理。

warehouse – 下一代 PyPI。

Warehousebandersnatch – PyPA 提供的 PyPI 镜像工具。

devpi – PyPI 服务和打包/测试/分发工具。

localshop – 本地 PyPI 服务(自定义包并且自动对 PyPI 镜像)。

分发

打包为可执行文件以便分发。

PyInstaller – 将 Python 程序转换成独立的执行文件(跨平台)。

dh-virtualenv – 构建并将 virtualenv 虚拟环境作为一个 Debian 包来发布。

Nuitka – 将脚本、模块、包编译成可执行文件或扩展模块。

py2app – 将 Python 脚本变为独立软件包(Mac OS X)。

py2exe – 将 Python 脚本变为独立软件包(Windows)。

pynsist – 一个用来创建 Windows 安装程序的工具,可以在安装程序中打包 Python本身。

构建工具

将源码编译成软件。

buildout – 一个构建系统,从多个组件来创建,组装和部署应用。

BitBake – 针对嵌入式 Linux 的类似 make 的构建工具。

fabricate – 对任何语言自动找到依赖关系的构建工具。

PlatformIO – 多平台命令行构建工具。

PyBuilder – 纯 Python 实现的持续化构建工具。

SCons – 软件构建工具。

交互式解析器

交互式 Python 解析器。

IPython – 功能丰富的工具,非常有效的使用交互式 Python。

bpython- 界面丰富的 Python 解析器。

ptpython – 高级交互式Python解析器, 构建于python-prompt-toolkit 之上。

文件

文件管理和 MIME(多用途的网际邮件扩充协议)类型检测。

imghdr – (Python 标准库)检测图片类型。

mimetypes – (Python 标准库)将文件名映射为 MIME 类型。

path.py – 对 os.path 进行封装的模块。

pathlib – (Python3.4+ 标准库)跨平台的、面向对象的路径操作库。

python-magic- 文件类型检测的第三方库 libmagic 的 Python 接口。

Unipath- 用面向对象的方式操作文件和目录

watchdog – 管理文件系统事件的 API 和 shell 工具

日期和时间

操作日期和时间的类库。

arrow- 更好的 Python 日期时间操作类库。

Chronyk – Python 3 的类库,用于解析手写格式的时间和日期。

dateutil – Python datetime 模块的扩展。

delorean- 解决 Python 中有关日期处理的棘手问题的库。

moment – 一个用来处理时间和日期的Python库。灵感来自于Moment.js。

PyTime – 一个简单易用的Python模块,用于通过字符串来操作日期/时间。

pytz – 现代以及历史版本的世界时区定义。将时区数据库引入Python。

when.py – 提供用户友好的函数来帮助用户进行常用的日期和时间操作。

文本处理

用于解析和操作文本的库。

通用

chardet – 字符编码检测器,兼容 Python2 和 Python3。

difflib – (Python 标准库)帮助我们进行差异化比较。

ftfy – 让Unicode文本更完整更连贯。

fuzzywuzzy – 模糊字符串匹配。

Levenshtein – 快速计算编辑距离以及字符串的相似度。

pangu.py – 在中日韩语字符和数字字母之间添加空格。

pyfiglet -figlet 的 Python实现。

shortuuid – 一个生成器库,用以生成简洁的,明白的,URL 安全的 UUID。

unidecode – Unicode 文本的 ASCII 转换形式 。

uniout – 打印可读的字符,而不是转义的字符串。

xpinyin – 一个用于把汉字转换为拼音的库。

参考:知乎

Python 常用的标准库以及第三方库

standard libs:

itertools

functools 学好python有必要掌握上面这两个库吧,

re 正则

subprocess 调用shell命令的神器

pdb 调试

traceback 调试

pprint 漂亮的输出

logging 日志

threading和multiprocessing 多线程

urllib/urllib2/httplib http库,httplib底层一点,推荐第三方的库requests

os/sys 系统,环境相关

Queue 队列

pickle/cPickle 序列化工具

hashlib md5, sha等hash算法

cvs

json/simplejson python的json库,据so上的讨论和benchmark,simplejson的性能要高于json

timeit 计算代码运行的时间等等

cProfile python性能测量模块

glob 类似与listfile,可以用来查找文件

atexit 有一个注册函数,可用于正好在脚本退出运行前执行一些代码

dis python 反汇编,当对某条语句不理解原理时,可以用dis.dis 函数来查看代码对应的python 解释器指令等等。

3th libs:

paramiko ssh python 库

selenium 浏览器自动化测试工具selenium的python 接口

lxml python 解析html,xml 的神器

mechanize Stateful programmatic web browsing

pycurl cURL library module for Python

Fabric Fabric is a Python (2.5 or higher) library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks.

xmltodict xml 转 dict,真心好用

urllib3 和 requests: 当然其实requests就够了 Requests: HTTP for Humans

flask web 微框架

ipdb 调试神器,同时推荐ipython!结合ipython使用

redis redis python接口

pymongo mongodbpython接口

PIL python图像处理

mako python模版引擎

numpy , scipy 科学计算

matplotlib 画图

scrapy 爬虫

django/tornado/web.py/web2py/uliweb/flask/twisted/bottle/cherrypy.等等 python web框架/服务器

sh 1.08 — sh v1.08 documentation 用来运行shell 模块的 极佳选择

1、NumPy

NumPy是构建科学计算 stack 的最基础的包。它为 Python 中的 n 维数组和矩阵的操作提供了大量有用的功能。该库还提供了 NumPy 数组类型的数学运算向量化,可以提升性能,从而加快执行速度。

2、SciPy

SciPy 是一个工程和科学软件库, 包含线性代数、优化、集成和统计的模块。SciPy 库的主

要功能建立在 NumPy 的基础之上,它通过其特定的子模块提供高效的数值例程操作。SciPy 的所有子模块中的函数都有详细的文档,这也是一个优势。

3、Pandas

Pandas是一个 Python 包,旨在通过「标记(labeled)」和「关系(relational)」数据进行工作,简单直观。Pandas 是 data wrangling 的完美工具。它设计用于快速简单的数据操作、聚合和可视化。

4、Seaborn

Seaborn 主要关注统计模型的可视化这种可视化包括热度图(heat map),可以总结数据但也描绘总体分布。Seaborn 基于 Matplotlib,并高度依赖于它。

5、Bokeh

Bokeh是一个很好的可视化库,其目的是交互式可视化,不过这个库独立于 Matplotlib,它通过现代浏览器以数据驱动文档(D3.js)的风格呈现。

6、Scikits

Scikits 是 SciPy Stack 的附加软件包,专为特定功能(如图像处理和辅助机器学习)而设计。其中最突出的一个是 scikit-learn。该软件包构建于 SciPy 之上,并大量使用其数学操作,是使用 Python 进行机器学习的实际上的行业标准。

7、Theano

Theano 是一个 Python 包,它定义了与 NumPy 类似的多维数组,以及数学运算和表达式。该库是经过编译的,使其在所有架构上能够高效运行。这个库最初由蒙特利尔大学机器学习组开发,主要是为了满足机器学习的需求。

8、Keras

Keras是一个使用高层接口构建神经网络的开源库,它是用 Python 编写的。它简单易懂,具有高级可扩展性。Keras 极其容易上手,而且可以进行快速的原型设计,足以用于严肃的建模。

9、Gensim

Gensim是一个用于 Python 的开源库,实现了用于向量空间建模和主题建模的工具。Gensim 实现了诸如分层 Dirichlet 进程(HDP)、潜在语义分析(LSA)和潜在 Dirichlet 分配(LDA)等算法,还有 tf-idf、随机投影、word2vec 和 document2vec,以便于检查一组文档(通常称为语料库)中文本的重复模式。

10、Scrapy

Scrapy 是用于从网络检索结构化数据的爬虫程序的库。它现在已经发展成了一个完整的框架,可以从 API 收集数据,也可以用作通用的爬虫。该库在接口设计上遵循著名的 Don』t Repeat Yourself 原则——提醒用户编写通用的可复用的代码,因此可以用来开发和扩展大型爬虫。