Python为啥这么火,这么多人学,就是因为简单好学,功能强大,整个社区非常活跃,资料很多。而且这语言涉及了方方面面,比如自动化测试,运维,爬虫,数据分析,机器学习,金融领域,后端开发,云计算,游戏开发都有涉及。
大概列了一下整个Python库的应用的方法面面,粗略算算就有20几个方向。左右两边分两个方向,左边负责进攻(主外),每一项单独拉出来都是精品,都是Python应用里面拳头产品;右边负责守(主内),都是涉及底层的配置,算是整个大厦的地基。
1.Python大厦的底层基建
环境管理
管理 Python 版本和环境的工具:
包管理
管理包和依赖的工具:
分发
打包为可执行文件以便分发。
配置
用来保存和解析配置的库:
2.Python大厦的管理配置
文件
日期和时间
操作日期和时间的类库:
arrow:更好的 Python 日期时间操作类库。
Chronyk:Python 3 的类库,用于解析手写格式的时间和日期。
dateutil:Python datetime 模块的扩展。
delorean:解决 Python 中有关日期处理的棘手问题的库。
maya:人性化的时间处理库。
moment:一个用来处理时间和日期的 Python 库。灵感来自于 Moment.js。
pendulum:一个比 arrow 更具有明确的,可预测的行为的时间操作库。
PyTime:一个简单易用的 Python 模块,用于通过字符串来操作日期/时间。
pytz:现代以及历史版本的世界时区定义。将时区数据库引入 Python。
when.py:提供用户友好的函数来帮助用户进行常用的日期和时间操作。
potime:统计代码运行时间的代码工具。
文本处理
用于解析和操作文本的库。
通用
chardet:字符编码检测器,兼容 Python2 和 Python3。
difflib:(Python 标准库)帮助我们进行差异化比较。
ftfy:让 Unicode 文本更完整更连贯。
fuzzywuzzy:模糊字符串匹配。
Levenshtein:快速计算编辑距离以及字符串的相似度。
pangu.py:在中日韩语字符和数字字母之间添加空格。
pypinyin:汉字拼音转换工具 Python 版。
shortuuid:一个生成器库,用以生成简洁的,明白的,URL 安全的 UUID。
simplejson:Python 的 JSON 编码、解码器。
unidecode:Unicode 文本的 ASCII 转换形式 。
uniout:打印可读的字符,而不是转义的字符串。
xpinyin:一个用于把汉字转换为拼音的库。
yfiglet-figlet:pyfiglet -figlet 的 Python 实现。
flashtext: 一个高效的文本查找替换库。
Slug 化
解析器
办公文本格式处理
通用
Office
Marmir:把输入的 Python 数据结构转换为电子表单。
openpyxl:一个用来读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。
pyexcel:一个提供统一 API,用来读写,操作 Excel 文件的库。
python-docx:读取,查询以及修改 Microsoft Word 2007/2008 docx 文件。
relatorio:模板化 OpenDocument 文件。
unoconv:在 LibreOffice/OpenOffice 支持的任意文件格式之间进行转换。
XlsxWriter:一个用于创建 Excel .xlsx 文件的 Python 模块。
xlwings:一个使得在 Excel 中方便调用 Python 的库(反之亦然),基于 BSD 协议。
xlwt:读写 Excel 文件的数据和格式信息。
poexcel:处理Excel。
Markdown
YAML
CSV
配置
用来保存和解析配置的库。
命令行工具
用于创建命令行程序的库。
命令行程序开发
asciimatics:跨平台,全屏终端包(即鼠标/键盘输入和彩色,定位文本输出),完整的复杂动画和特殊效果的高级 API。
cement:Python 的命令行程序框架。
click:一个通过组合的方式来创建精美命令行界面的包。
cliff:一个用于创建命令行程序的框架,可以创建具有多层命令的命令行程序。
clint:Python 命令行程序工具。
colorama:跨平台彩色终端文本。
docopt:Python 风格的命令行参数解析器。
Gooey:一条命令,将命令行程序变成一个 GUI 程序。
python-prompt-toolkit:一个用于构建强大的交互式命令行程序的库。
python-fire:Google 出品的一个基于 Python 类的构建命令行界面的库。
Pythonpy:在命令行中直接执行任何 Python 指令。
生产力工具
aws-cli:Amazon Web Services 的通用命令行界面。
bashplotlib:在终端中进行基本绘图。
caniusepython3:判断是哪个项目妨碍你你移植到 Python3。
cookiecutter:从 cookiecutters(项目模板)创建项目的一个命令行工具。
doitlive:一个用来在终端中进行现场演示的工具。
pyftpdlib:一个速度极快和可扩展的 Python FTP 服务库。
howdoi:通过命令行获取即时的编程问题解答。
httpie:一个命令行 HTTP 客户端,cURL 的替代品,易用性更好。
PathPicker:从 bash 输出中选出文件。
percol:向 UNIX shell 传统管道概念中加入交互式选择功能。
SAWS:一个加强版的 AWS 命令行。
thefuck:修正你之前的命令行指令。
mycli:一个 MySQL 命令行客户端,具有自动补全和语法高亮功能。
pgcli:Postgres 命令行工具,具有自动补全和语法高亮功能。
try:一个从来没有更简单的命令行工具,用来试用 python 库。
3.Python大厦的仓库
数据库
Python 实现的数据库。
数据库驱动
用来连接和操作数据库的库。
MySQL:awesome-mysql 系列
PostgreSQL
其他关系型数据库
NoSQL 数据库
asyncio-redis:基于 asyncio 的 redis 客户端 (PEP 3156)。
cassandra-python-driver:Cassandra 的 Python 驱动。
HappyBase:一个为 Apache HBase 设计的,对开发者友好的库。
Plyvel:一个快速且功能丰富的 LevelDB 的 Python 接口。
py2neo:Neo4j restful 接口的 Python 封装客户端。
pycassa:Cassandra 的 Python Thrift 驱动。
PyMongo:MongoDB 的官方 Python 客户端。
redis-py:Redis 的 Python 客户端。
telephus:基于 Twisted 的 Cassandra 客户端。
txRedis:基于 Twisted 的 Redis 客户端。
4.Python大厦的网络通讯
网络
用于网络编程的库。
HTTP
使用 HTTP 的库。
aiohttp:基于 asyncio 的异步 HTTP 网络库。
requests:人性化的 HTTP 请求库。
grequests:requests 库 + gevent ,用于异步 HTTP 请求.
httplib2:全面的 HTTP 客户端库。
treq:类似 requests 的 Python API 构建于 Twisted HTTP 客户端之上。
urllib3:一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。
WebSocket 帮助使用 WebSocket 的库。
AutobahnPython:给 Python 、使用的 WebSocket & WAMP 基于 Twisted 和 asyncio。
Crossbar:开源统一应用路由(Websocket & WAMP for Python on Autobahn)。
django-socketio:给 Django 用的 WebSockets。
WebSocket-for-Python:为 Python2/3 以及 PyPy 编写的 WebSocket 客户端和服务器库。
WSGI 服务器
兼容 WSGI 的 web 服务器
Web 框架
全栈 Web 框架。
电子商务
用于电子商务以及支付的框架和库。
RESTful API
用来开发 RESTful APIs 的库
Django
Flask
Pyramid
与框架无关的
模板引擎
模板生成和词法解析的库和工具。
队列
处理事件以及任务队列的库。
搜索
对数据进行索引和执行搜索查询的库和软件。
电子邮件
用来发送和解析电子邮件的库。
marrow.mailer:高性能可扩展邮件分发框架。
URL 处理
解析 URLs 的库
5.Python大厦的动力系统
进程
操作系统进程启动及通信库。
并发和并行
用以进行并发和并行操作的库。
总结
- 最后希望你编程学习上不急不躁,按照计划有条不紊推进,把任何一件事做到极致,都是不容易的,加油,努力!相信自己!
文末福利
- 最后这里免费分享给大家一份Python全套学习资料,希望能帮到那些不满现状,想提升自己却又没有方向的朋友,也可以和我一起来学习交流呀。
包含编程资料、学习路线图、源代码、软件安装包等!【[点击这里]】领取!
- ① Python所有方向的学习路线图,清楚各个方向要学什么东西
- ② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析
- ③ 100多个Python实战案例,学习不再是只会理论
- ④ 华为出品独家Python漫画教程,手机也能学习