英汉小词典
pythoneer - 指所有用python语言开发程序的人
pythonista - 意为资深的、追求质量和品味的python开发者
我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。本文所列举的这100个模块,是我在工作和学习中用过的或者正在学习的,算是对自己过去12年的学习总结。希望对处在迷茫中的程序员有所帮助。
在这个列表中,我把模块分成11大类:
- 基础类
- 数据库接口类
- 网络通讯类
- 音像游戏类
- GUI类
- web框架类
- 科学计算类
- 2D/3D类
- 数据处理类
- 机器学习类
- 工具类
针对每一个模块,根据以往的工作经验,我给出了相应的推荐指数,从1颗星到5颗星。这是一个非常主观的判断,仅供参考。
- ★☆☆☆☆:较少被用到
- ★★☆☆☆:重要但较少被用到,
- ★★★☆☆:解决特定问题不可或缺
- ★★★★☆:主流应用,优先学习
- ★★★★★:同类模块最优,或学习优先级最高
从 pythoneer 到 pythonista 的100个模块
No. |
来源 |
模块 |
说明 |
分类 |
推荐指数 |
1 |
标准库 |
os |
文件和路径操作功能 |
基础类 |
★★★★★ |
2 |
标准库 |
sys |
系统和环境相关功能 |
基础类 |
★★★☆☆ |
3 |
标准库 |
time |
时间库 |
基础类 |
★★★★☆ |
4 |
标准库 |
datetime |
日期处理库 |
基础类 |
★★★★★ |
5 |
第三方库 |
dateutil |
datetime模块的扩展 |
基础类 |
★★☆☆☆ |
6 |
标准库 |
math |
数学函数库 |
基础类 |
★★★★☆ |
7 |
标准库 |
random |
随机数库 |
基础类 |
★★★☆☆ |
8 |
标准库 |
re |
正则表达式功能 |
基础类 |
★★★★☆ |
9 |
标准库 |
queue |
队列功能 |
基础类 |
★★★☆☆ |
10 |
标准库 |
copy |
数据复制库 |
基础类 |
★★★☆☆ |
11 |
标准库 |
threading |
线程接口 |
基础类 |
★★★★★ |
12 |
标准库 |
multiprocessing |
基于进程的“线程”接口 |
基础类 |
★★★★★ |
13 |
标准库 |
configparser |
ini文件解析器 |
基础类 |
★★☆☆☆ |
14 |
标准库 |
argparse |
命令行选项、参数和子命令解析器 |
基础类 |
★★☆☆☆ |
15 |
标准库 |
json |
json库 |
基础类 |
★★★★☆ |
16 |
标准库 |
base64 |
Base16/32/64/85数据编码库 |
基础类 |
★★★☆☆ |
17 |
标准库 |
uuid |
通用唯一识别码 |
基础类 |
★★★☆☆ |
18 |
标准库 |
hashlib |
md5, sha等hash算法库 |
基础类 |
★★★★☆ |
19 |
标准库 |
glob |
文件和路径查找功能 |
基础类 |
★☆☆☆☆ |
20 |
标准库 |
shutil |
对文件与文件夹各种常见操作 |
基础类 |
★★★☆☆ |
21 |
标准库 |
zipfile |
创建读写添加及列出ZIP文件的工具 |
基础类 |
★★☆☆☆ |
22 |
标准库 |
tartfile |
创建读写添加及列出TAR文件的工具 |
基础类 |
★★☆☆☆ |
23 |
标准库 |
gc |
垃圾回收库 |
基础类 |
★★☆☆☆ |
24 |
标准库 |
logging |
日志功能 |
基础类 |
★★★★☆ |
25 |
标准库 |
ctypes |
用来调用C代码的外来函数接口 |
基础类 |
★★★☆☆ |
26 |
标准库 |
struct |
将字节串解读为打包的二进制数据 |
基础类 |
★★☆☆☆ |
27 |
标准库 |
unittest |
单元测试框架 |
基础类 |
★★☆☆☆ |
28 |
第三方库 |
xlrd |
读Excel文件的数据和格式信息 |
基础类 |
★★★★☆ |
29 |
第三方库 |
xlwt |
写Excel文件的数据和格式信息 |
基础类 |
★★★★☆ |
30 |
第三方库 |
freetype |
字体文件读取库 |
基础类 |
★★☆☆☆ |
31 |
第三方库 |
APScheduler |
进程内任务调度 |
基础类 |
★★★☆☆ |
32 |
第三方库 |
watchdog |
管理文件系统事件的API和shell工具 |
基础类 |
★★★☆☆ |
33 |
标准库 |
sqlite3 |
文件型数据库驱动 |
数据库接口类 |
★★★★★ |
34 |
标准库 |
PyMySQL |
MySQL数据库的连接库 |
数据库接口类 |
★★★★☆ |
35 |
标准库 |
cx_oracle |
oracle数据库的连接库 |
数据库接口类 |
★★★★☆ |
36 |
标准库 |
pymongo |
mongodb数据库的连接库 |
数据库接口类 |
★★★☆☆ |
37 |
标准库 |
redis |
redis数据库的连接库 |
数据库接口类 |
★★☆☆☆ |
38 |
标准库 |
pyodbc |
数据库通用接口标准连接库 |
数据库接口类 |
★★☆☆☆ |
39 |
标准库 |
socket |
socket通讯库 |
网络通讯类 |
★★★★☆ |
40 |
标准库 |
socketserver |
socket服务器 |
网络通讯类 |
★★★☆☆ |
41 |
标准库 |
xmlrpc |
xmlrpc服务器 |
网络通讯类 |
★★★☆☆ |
42 |
标准库 |
ftplib |
FTP服务连接库 |
网络通讯类 |
★★★☆☆ |
43 |
标准库 |
smtplib |
邮件发送库 |
网络通讯类 |
★☆☆☆☆ |
44 |
标准库 |
email |
邮件库 |
网络通讯类 |
★☆☆☆☆ |
45 |
标准库 |
urllib |
网络请求库 |
网络通讯类 |
★★★★☆ |
46 |
第三方库 |
pyserial |
串口通讯库 |
网络通讯类 |
★★☆☆☆ |
47 |
第三方库 |
paramiko |
SSH2远程安装连接库 |
网络通讯类 |
★★☆☆☆ |
48 |
第三方库 |
pycurl |
多协议文件传输库 |
网络通讯类 |
★★★★★ |
49 |
第三方库 |
requests |
http请求的模块 |
网络通讯类 |
★★★★☆ |
50 |
标准库 |
asyncio |
异步I/O、事件循环、协程以及任务 |
网络通讯类 |
★★☆☆☆ |
51 |
第三方库 |
twisted |
基于事件驱动的网络引擎框架 |
网络通讯类 |
★★☆☆☆ |
52 |
第三方库 |
dispy |
分布式并行计算框架 |
网络通讯类 |
★★☆☆☆ |
53 |
第三方库 |
pp |
支持SMP和集群方式的并行计算框架 |
网络通讯类 |
★★☆☆☆ |
54 |
第三方库 |
pillow |
图像处理库 |
音像游戏类 |
★★★★★ |
55 |
第三方库 |
opencv |
计算机视觉库 |
音像游戏类 |
★★★★★ |
56 |
第三方库 |
imageio |
GIF、AVI文件生成 |
音像游戏类 |
★★☆☆☆ |
57 |
第三方库 |
pygame |
python游戏开发模块 |
音像游戏类 |
★★★★☆ |
58 |
第三方库 |
pyaudio |
跨平台的音频I/O库 |
音像游戏类 |
★★★☆☆ |
59 |
标准库 |
winsound |
windows平台基本声音播放库 |
音像游戏类 |
★★☆☆☆ |
60 |
第三方库 |
wxpython |
GUI图形库 |
GUI类 |
★★★★★ |
61 |
第三方库 |
pyqt |
GUI图形库 |
GUI类 |
★★★★☆ |
62 |
标准库 |
tkinter |
GUI图形库 |
GUI类 |
★☆☆☆☆ |
63 |
第三方库 |
cefpython3 |
将浏览器嵌入到GUI中 |
GUI类 |
★☆☆☆☆ |
64 |
第三方库 |
pywin32 |
针对Windows的Python扩展 |
GUI类 |
★★★☆☆ |
65 |
第三方库 |
tornado |
非阻塞式Web服务器框架 |
web框架类 |
★★★★★ |
66 |
第三方库 |
django |
重量级Web服务器框架 |
web框架类 |
★★★★☆ |
67 |
第三方库 |
flask |
轻量级Web服务器框架 |
web框架类 |
★★★☆☆ |
68 |
第三方库 |
numpy |
科学计算的基础软件包 |
科学计算类 |
★★★★★ |
69 |
第三方库 |
scipy |
科学计算常用软件包 |
科学计算类 |
★★★★☆ |
70 |
第三方库 |
sympy |
科学计算库 |
科学计算类 |
★★★☆☆ |
71 |
第三方库 |
eigen |
矩阵运算库 |
科学计算类 |
★★☆☆☆ |
72 |
第三方库 |
pyopengl |
opengl的python接口 |
2D/3D类 |
★★★★★ |
73 |
第三方库 |
vispy |
交互式科学可视化的Python库 |
2D/3D类 |
★★★☆☆ |
74 |
第三方库 |
vtk |
三维计算机图形学、图像处理和可视化 |
2D/3D类 |
★★★☆☆ |
75 |
第三方库 |
mayavi |
基于VTK的3D绘图库 |
2D/3D类 |
★★★☆☆ |
76 |
第三方库 |
matplotlib |
2D绘图库 |
2D/3D类 |
★★★★★ |
77 |
第三方库 |
basemap |
matplotlib的地图库 |
2D/3D类 |
★★★☆☆ |
78 |
第三方库 |
pyproj |
地理投影坐标转换库 |
2D/3D类 |
★★☆☆☆ |
79 |
第三方库 |
bokeh |
针对浏览器的交互式可视化库 |
2D/3D类 |
★★★★☆ |
80 |
第三方库 |
pyecharts |
生成 Echarts 图表的类库 |
2D/3D类 |
★★★☆☆ |
81 |
第三方库 |
h5py |
HDF文件读写库 |
数据处理类 |
★★★☆☆ |
82 |
第三方库 |
netcdf4 |
NC文件读写库 |
数据处理类 |
★★★☆☆ |
83 |
第三方库 |
pyshp |
shape文件解析 |
数据处理类 |
★★☆☆☆ |
84 |
第三方库 |
xmltodict |
xml转换成json |
数据处理类 |
★★★☆☆ |
85 |
标准库 |
xml |
xml解析库 |
数据处理类 |
★☆☆☆☆ |
86 |
第三方库 |
lxml |
xml和html的解析库,支持XPath |
数据处理类 |
★★★★☆ |
87 |
第三方库 |
BeautifulSoup |
xml和html的解析库 |
数据处理类 |
★★★★☆ |
88 |
第三方库 |
scrapy |
网络爬虫库 |
数据处理类 |
★★★★☆ |
89 |
第三方库 |
pandas |
数据分析工具包 |
数据处理类 |
★★★★☆ |
90 |
第三方库 |
scikit-learn |
机器学习工具包 |
机器学习类 |
★★★★★ |
91 |
第三方库 |
milk |
机器学习工具包 |
机器学习类 |
★★★☆☆ |
92 |
第三方库 |
tensorflow |
深度学习框架 |
机器学习类 |
★★★★☆ |
93 |
第三方库 |
keras |
深度学习框架 |
机器学习类 |
★★★☆☆ |
94 |
第三方库 |
nltk |
自然语言处理工具包 |
机器学习类 |
★★★☆☆ |
95 |
第三方库 |
pip |
包和依赖关系管理工具 |
工具类 |
★★★★★ |
96 |
第三方库 |
setuptools |
包和依赖关系管理工具 |
工具类 |
★★★☆☆ |
97 |
第三方库 |
whell |
whl文件打包工具 |
工具类 |
★☆☆☆☆ |
98 |
第三方库 |
py2exe |
python脚本打包工具 |
工具类 |
★★☆☆☆ |
99 |
第三方库 |
cx_freeze |
python脚本打包工具 |
工具类 |
★★★★☆ |
100 |
第三方库 |
pyinstaller |
python脚本打包工具 |
工具类 |
★★★★★ |
后记
|