核心功能:提供高效的多维数组(ndarray)和数学函数,是所有数据处理库的基础(Pandas、Matplotlib 等都依赖它)。
适用场景:数值运算、矩阵操作、线性代数(如信号处理、科学计算)。
简单示例:创建数组并计算平均值
import numpy as np# 创建一维数组arr = np.array([1, 2, 3, 4, 5])# 计算平均值print("数组平均值:", arr.mean()) # 输出:3.0# 创建二维数组并做矩阵乘法mat1 = np.array([[1, 2],mat2 = np.array([[5, 6], [7, 8]])print("矩阵乘法结果:\n", mat1 @ mat2) # 输出:[[19 22], [43 50]]
核心功能:提供 DataFrame(表格型数据结构),支持数据清洗、筛选、分组、合并等操作,能轻松处理 Excel/CSV 等格式数据。
适用场景:数据分析、数据预处理(如金融数据分析、用户行为分析)。
简单示例:读取 CSV 文件并筛选数据
import pandas as pd# 读取CSV文件(生成表格型数据)df = pd.read_csv("data.csv")# 查看前5行数据print(df.head())# 筛选“年龄>30”且“城市=北京”的数据filtered_df = df[(df["年龄"] > 30) & (df["城市"] == "北京")]# 按“职业”分组计算平均收入avg_income = df.groupby("职业")["收入"].mean()print(avg_income)
核心功能:Python 最基础的可视化库,支持绘制折线图、柱状图、散点图、直方图等几乎所有图表类型。
适用场景:快速生成图表、简单数据展示(如论文图表、日常汇报)。
简单示例:绘制折线图和柱状图
import matplotlib.pyplot as pltimport numpy as npx = np.arange(1, 6) # x轴数据:1-5y1 = x * 2 # 折线图数据y2 = x + 3 # 柱状图数据# 创建画布plt.figure(figsize=(10, 4))# 子图1:折线图plt.subplot(1, 2, 1)plt.plot(x, y1, color="blue", marker="o", label="y=2x")plt.title("折线图示例")plt.legend()# 子图2:柱状图plt.subplot(1, 2, 2)plt.bar(x, y2, color="orange", label="y=x+3")plt.title("柱状图示例")plt.legend()# 显示图表plt.show()
核心功能:基于 Matplotlib 封装,默认样式更美观,支持更复杂的统计图表(如热力图、箱线图、小提琴图)。
适用场景:统计数据可视化、高颜值图表生成(如机器学习特征相关性分析)。
核心功能:微型 Web 框架,体积小、灵活度高,核心功能简洁,可通过扩展实现复杂需求(如数据库连接、用户认证)。
适用场景:小型网站、API 接口开发、快速原型验证(如个人博客、内部工具)。
简单示例:创建一个简单的 Web 接口
from flask import Flask, jsonify# 初始化Flask应用app = Flask(__name__)# 定义路由:访问根路径时返回欢迎信息def hello():return "欢迎来到Flask示例网站!"# 定义API接口:返回JSON数据def get_user(user_id):# 模拟从数据库获取用户数据user = {"id": user_id, "name": "张三", "age": 25}return jsonify(user) # 返回JSON格式响应# 启动服务(仅开发环境)if __name__ == "__main__":app.run(debug=True)
运行后访问 http://127.0.0.1:5000/api/user/1,会返回 {"id":1,"name":"张三","age":25}。
核心功能:“大而全” 的框架,内置 ORM(数据库操作)、Admin 后台、用户认证、表单验证等功能,遵循 “开箱即用” 理念。
适用场景:中大型网站、复杂 Web 系统(如电商平台、内容管理系统 CMS)。
优势:无需自己整合第三方工具,内置功能满足大部分企业需求,安全性高、文档完善。
核心功能:基于 Python 3.7 + 的类型提示,支持自动生成 API 文档,性能接近 Node.js/Go,还支持异步请求。
适用场景:高性能 API 接口、微服务(如机器学习模型部署、高并发接口)。
核心功能:封装了常用的机器学习算法(如线性回归、决策树、随机森林、SVM、KNN),支持数据分割、特征缩放、模型评估等全流程。
适用场景:传统机器学习任务(如分类、回归、聚类、特征工程)。
简单示例:用线性回归预测房价
from sklearn.linear_model import LinearRegressionfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import mean_squared_errorimport numpy as np# 模拟数据:面积(平方米)与房价(万元)X = np.array([[50], [70], [90], [110], [130]]) # 特征:面积y = np.array([150, 210, 270, 330, 390]) # 标签:房价# 分割训练集和测试集(80%训练,20%测试)X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 初始化线性回归模型model = LinearRegression()# 训练模型model.fit(X_train, y_train)# 预测测试集y_pred = model.predict(X_test)print("测试集预测结果:", y_pred)# 评估模型(均方误差)print("均方误差:", mean_squared_error(y_test, y_pred))
TensorFlow:谷歌开发的深度学习框架,支持静态计算图,生态完善(内置 Keras 高层 API、TensorBoard 可视化),适合生产环境部署。
PyTorch:Facebook 开发的深度学习框架,支持动态计算图,语法更简洁、调试更方便,适合科研和快速原型开发。
适用场景:深度学习任务(如图像识别、自然语言处理 NLP、神经网络搭建)。
核心功能:处理图像和视频的开源库,支持图像读取、滤波、边缘检测、人脸识别、目标跟踪等功能。
适用场景:计算机视觉任务(如人脸识别、车牌识别、图像分割、视频分析)。
简单示例:读取图片并转为灰度图
import cv2# 读取彩色图片(OpenCV默认BGR格式)img = cv2.imread("test.jpg")# 转为灰度图gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)# 显示图片(需按任意键关闭窗口)cv2.imshow("Gray Image", gray_img)cv2.waitKey(0)cv2.destroyAllWindows()# 保存灰度图cv2.imwrite("gray_test.jpg", gray_img)
openpyxl:支持读取和写入 Excel 2007+(.xlsx 格式)文件,能修改已有 Excel 内容。
xlsxwriter:擅长生成 Excel 文件,支持添加图表、公式、格式设置,但不支持读取已有文件。
适用场景:批量生成 Excel 报表、修改 Excel 数据(如每月销售报表自动生成)。
简单示例(openpyxl):修改 Excel 单元格内容
from openpyxl import load_workbook# 加载已有的Excel文件wb = load_workbook("report.xlsx")# 选择第一个工作表ws = wb.active# 修改A1单元格内容ws["A1"] = "2024年5月销售报表"# 在B2单元格写入公式(计算B3到B10的和)ws["B2"] = "=SUM(B3:B10)"# 保存文件wb.save("report_updated.xlsx")
核心功能:创建和修改 Word(.docx 格式)文件,支持添加文本、图片、表格、样式设置。
适用场景:批量生成 Word 文档(如合同、简历、报告)。
核心功能:通过 SMTP 协议发送邮件,支持添加附件、HTML 格式内容。
适用场景:自动发送报表、告警通知(如服务器异常时自动发邮件提醒)。
核心功能:模拟浏览器操作(如打开网页、点击按钮、输入文本),支持 Chrome、Firefox 等浏览器。
适用场景:Web 自动化测试、动态网页爬取(如模拟登录网站、批量下载数据)。
核心功能:简化 HTTP 请求操作(GET/POST),支持会话保持、Cookie 管理、文件上传,比 Python 内置的urllib更易用。
适用场景:调用 API 接口、网页爬取(如调用天气 API 获取数据)。
简单示例:发送 GET 请求获取天气数据
import requests# 调用天气API(示例接口,需替换为自己的APIKey)url = "https://api.openweathermap.org/data/2.5/weather"params = {"q": "Beijing", # 城市名"appid": "your_api_key", # 替换为自己的APIKey"units": "metric" # 温度单位:摄氏度}# 发送GET请求response = requests.get(url, params=params)# 解析JSON响应weather_data = response.json()# 提取温度和天气描述temp = weather_data["main"]["temp"]description = weather_data["weather"][0]["description"]print(f"北京当前温度:{temp}℃,天气:{description}")
核心功能:读取和写入 YAML 格式文件,YAML 比 JSON 更易读,适合作为配置文件(如项目的数据库配置、环境变量)。
适用场景:项目配置管理(如不同环境的数据库地址配置)。
核心功能:Python 内置的日志模块,支持设置日志级别(DEBUG/INFO/WARNING/ERROR)、输出到文件或控制台,比print更灵活。
适用场景:项目调试、生产环境日志记录(如记录用户操作、错误信息)。
# 安装指定库(默认最新版本)pip install 库名# 安装指定版本(如安装Pandas 2.0.0版本)pip install 库名==版本号# 升级库到最新版本pip install --upgrade 库名# 示例:安装Flaskpip install flask# 示例:安装指定版本的TensorFlow(2.15.0)pip install tensorflow==2.15.0
常见 pip 问题解决:
问题 1:pip 命令不存在或版本过低。
python -m pip install --upgrade pip
问题 2:安装速度慢(国外源)。
# 使用阿里云镜像安装Pandaspip install pandas -i https://mirrors.aliyun.com/pypi/simple/
conda install 库名# 示例:用conda安装PyTorch(自动匹配系统环境)conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
1.从 GitHub 等平台下载库的源码压缩包,解压;
2.打开命令行,进入源码目录;
3.执行安装命令:
python setup.py install
1.新手入门:先掌握 NumPy、Pandas、Matplotlib(数据处理基础),再学 Flask(Web 入门)或 Scikit-learn(机器学习入门);
2.工作需求驱动:需要处理 Excel 就学 openpyxl,需要开发 API 就学 FastAPI,需要做机器学习就学 Scikit-learn+PyTorch;
3.避免 “库依赖症”:优先用 Python 标准库(如logging、json),再用第三方库,不要为了 “用库” 而用库。

