每一门技艺都是入门容易熟悉难,越是了解,越是感觉到自己的欠缺,在python博大精深的世界里,这些蔚为壮观的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脚本变为独立软件包(MacOSX)。
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–Python3的类库,用于解析手写格式的时间和日期。
dateutil–Pythondatetime模块的扩展。
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–一个用于把汉字转换为拼音的库。
Slug化
awesome-slugify–一个Pythonslug化库,可以保持Unicode。
python-slugify–Pythonslug化库,可以把unicode转化为ASCII。
unicode-slugify–一个slug工具,可以生成unicodeslugs,需要依赖Django。
解析器
phonenumbers–解析,格式化,储存,验证电话号码。
PLY–lex和yacc解析工具的Python实现。
Pygments–通用语法高亮工具。
pyparsing–生成通用解析器的框架。
python-nameparser–把一个人名分解为几个独立的部分。
python-user-agents–浏览器useragent解析器。
sqlparse–一个无验证的SQL解析器。
特殊文本格式处理
一些用来解析和操作特殊文本格式的库。
通用
tablib–一个用来处理中表格数据的模块。
Office
Marmir–把输入的Python数据结构转换为电子表单。
openpyxl–一个用来读写Excelxlsx/xlsm/xltx/xltm文件的库。
python-docx–读取,查询以及修改MicrosoftWord/docx文件。
unoconv–在LibreOffice/OpenOffice支持的任意文件格式之间进行转换。
XlsxWriter–一个用于创建Excel.xlsx文件的Python模块。
xlwings–一个使得在Excel中方便调用Python的库(反之亦然),基于BSD协议。
xlwt/xlrd–读写Excel文件的数据和格式信息。
relatorio–模板化OpenDocument文件。
PDFMiner–一个用于从PDF文档中抽取信息的工具。
PyPDF2–一个可以分割,合并和转换PDF页面的库。
ReportLab–快速创建富文本PDF文档。
Markdown
Mistune–快速并且功能齐全的纯Python实现的Markdown解析器。
Python-Markdown–JohnGruber’sMarkdown的Python版实现。
YAML
PyYAML–Python版本的YAML解析器。
CSV
csvkit–用于转换和操作CSV的工具。
Archive
unp–一个用来方便解包归档文件的命令行工具。
自然语言处理
用来处理人类语言的库。
NLTK–一个先进的平台,用以构建处理人类语言数据的Python程序。
jieba–中文分词工具。
langid.py–独立的语言识别系统。
Pattern–Python网络信息挖掘模块。
SnowNLP–一个用来处理中文文本的库。
TextBlob–为进行普通自然语言处理任务提供一致的API。
TextGrocery–一简单高效的短文本分类工具,基于LibLinear和Jieba。
文档
用以生成项目文档的库。
Sphinx–Python文档生成器。
awesome-sphinxdoc
MkDocs–对Markdown友好的文档生成器。
pdoc–一个可以替换Epydoc的库,可以自动生成Python库的API文档。
Pycco–文学编程(literate-programming)风格的文档生成器。
配置
用来保存和解析配置的库。
config–logging模块作者写的分级配置模块。
ConfigObj–INI文件解析器,带验证功能。
ConfigParser–(Python标准库)INI文件解析器。
profig–通过多种格式进行配置,具有数值转换功能。
python-decouple–将设置和代码完全隔离。
命令行工具
用于创建命令行程序的库。
命令行程序开发
cement–Python的命令行程序框架。
click–一个通过组合的方式来创建精美命令行界面的包。
cliff–一个用于创建命令行程序的框架,可以创建具有多层命令的命令行程序。
clint–Python命令行程序工具。
colorama–跨平台彩色终端文本。
docopt–Python风格的命令行参数解析器。
Gooey–一条命令,将命令行程序变成一个GUI程序。
python-prompt-toolkit–一个用于构建强大的交互式命令行程序的库。
生产力工具
aws-cli–AmazonWebServices的通用命令行界面。
bashplotlib–在终端中进行基本绘图。
caniusepython3–判断是哪个项目妨碍你你移植到Python3。
cookiecutter–从cookiecutters(项目模板)创建项目的一个命令行工具。
doitlive–一个用来在终端中进行现场演示的工具。
howdoi–通过命令行获取即时的编程问题解答。