Python 学习笔记:常用核心库简介

我近期在使用影刀开发各类自动化流程,发现即便借助影刀的指令体系,深入掌握 Python 第三方库依然至关重要。这些库覆盖了数据处理、可视化、网络请求、自动化等几乎所有编程场景,因此我整理了这份新手入门级的 Python 常用库笔记,包含核心功能、安装方式和极简示例,助力快速上手。

一、基础必备库

1. NumPy(数值计算基础)

核心功能

  • 提供高性能的多维数组(ndarray) 数据结构,是科学计算的基础。
  • 支持向量化运算、矩阵操作、线性代数、傅里叶变换等数值计算。
  • 比 Python 原生列表快得多,是 Pandas、Matplotlib 等库的底层依赖。

安装

pip install numpy

极简示例

import numpy as np

# 创建一维数组
arr1 = np.array([1, 2, 3, 4])
# 创建二维数组(矩阵)
arr2 = np.array([[1, 2], [3, 4]])

# 数组运算(向量化,无需循环)
print(arr1 * 2)  # 输出:[2 4 6 8]
print(arr2 + arr2)  # 输出:[[2 4], [6 8]]
# 矩阵乘法
print(arr2 @ arr2)  # 输出:[[7 10], [15 22]]

2. Pandas(数据处理与分析)

核心功能

  • 提供 DataFrame(表格型数据结构) 和 Series(一维序列),完美适配表格数据(如 Excel/CSV)。
  • 支持数据清洗(缺失值、重复值处理)、筛选、分组、合并、透视表等。
  • 是数据分析、数据挖掘的核心工具,能轻松处理几十万甚至百万行数据。

安装

pip install pandas

极简示例

import pandas as pd

# 创建DataFrame(模拟表格数据)
df = pd.DataFrame({
    "姓名": ["张三", "李四", "王五"],
    "年龄": [20, 25, 30],
    "城市": ["北京", "上海", "广州"]
})

# 数据查看
print(df.head())  # 查看前n行(默认5行)
# 数据筛选:筛选年龄>22的行
print(df[df["年龄"] > 22])
# 保存为CSV文件
df.to_csv("user_info.csv", index=False)
# 读取CSV文件
df_read = pd.read_csv("user_info.csv")

二、数据可视化库

1. Matplotlib(基础可视化库)

核心功能

  • Python 最基础的绘图库,支持绘制折线图、柱状图、散点图、直方图等几乎所有基础图表。
  • 高度可定制(标题、坐标轴、颜色、样式等),是其他可视化库(如 Seaborn)的底层。

安装

pip install matplotlib

极简示例

import matplotlib.pyplot as plt
import numpy as np

# 生成数据
x = np.linspace(0, 10, 100)  # 0到10之间生成100个均匀分布的数
y = np.sin(x)

# 绘制折线图
plt.plot(x, y, color="red", label="sin(x)")
plt.xlabel("X轴")  # X轴标签
plt.ylabel("Y轴")  # Y轴标签
plt.title("正弦函数曲线")  # 标题
plt.legend()  # 显示图例
plt.show()  # 展示图表

2. Seaborn(高级可视化库)

核心功能

  • 基于 Matplotlib 封装,语法更简洁,默认样式更美观。
  • 专注于统计可视化(如箱线图、热力图、小提琴图、配对图),适配 Pandas 的 DataFrame。

安装

pip install seaborn

极简示例

import seaborn as sns
import pandas as pd

# 使用内置数据集
tips = sns.load_dataset("tips")  # 餐饮小费数据集

# 绘制柱状图(按性别分组,展示平均消费)
sns.barplot(x="sex", y="total_bill", data=tips)
# 绘制热力图(展示变量相关性)
sns.heatmap(tips.corr(numeric_only=True), annot=True, cmap="coolwarm")

三、网络请求与爬虫库

1. Requests(HTTP 请求库)

核心功能

  • 替代 Python 原生的 urllib,语法极简,支持 GET/POST 请求、Cookie、Headers、代理等。
  • 是爬虫、调用 API 接口的首选库。

安装

pip install requests

极简示例

import requests

# GET请求(获取网页内容)
response = requests.get("https://www.baidu.com")
response.encoding = "utf-8"  # 设置编码
print(response.text[:100])  # 打印前100个字符

# POST请求(模拟表单提交)
data = {"username": "test", "password": "123456"}
response = requests.post("https://httpbin.org/post", data=data)
print(response.json())  # 以JSON格式返回响应

2. BeautifulSoup4(网页解析库)

核心功能

  • 解析 HTML/XML 页面,提取标签、属性、文本等内容,搭配 Requests 实现爬虫。
  • 支持 CSS 选择器、正则表达式匹配,上手简单。

安装

pip install beautifulsoup4

极简示例

import requests
from bs4 import BeautifulSoup

# 获取网页内容
response = requests.get("https://www.baidu.com")
soup = BeautifulSoup(response.text, "html.parser")  # 解析HTML

# 提取指定标签(比如所有a标签的href属性)
a_tags = soup.find_all("a")  # 找到所有a标签
for tag in a_tags[:5]:  # 打印前5个
    print(tag.get("href"), tag.text)

四、自动化与实用工具库

1. os & sys(系统交互库,内置)

核心功能

  • os:操作文件/目录(创建、删除、遍历、路径拼接)、执行系统命令。
  • sys:获取系统参数(如命令行参数、Python 版本)、控制程序退出等。
  • 无需安装,Python 原生内置。

极简示例

import os
import sys

# os库示例:遍历指定目录下的文件
print(os.listdir("."))  # 列出当前目录所有文件/文件夹
os.makedirs("test_dir", exist_ok=True)  # 创建目录(已存在则不报错)

# sys库示例:获取命令行参数
print("Python版本:", sys.version)
print("命令行参数:", sys.argv)  # 运行时传入的参数,如python test.py 123,则sys.argv=[test.py, 123]

2. datetime(时间处理库,内置)

核心功能

  • 处理日期、时间的解析、格式化、加减运算,替代原生 time 库的复杂操作。
  • 无需安装,Python 原生内置。

极简示例

from datetime import datetime, timedelta

# 获取当前时间
now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))  # 格式化输出:2026-03-11 10:00:00

# 时间加减(比如3天后)
after_3_days = now + timedelta(days=3)
print(after_3_days.strftime("%Y-%m-%d"))

# 解析字符串为时间
time_str = "2026-01-01"
time_obj = datetime.strptime(time_str, "%Y-%m-%d")
print(time_obj)

3. OpenPyXL(Excel 操作库)

核心功能

  • 读写 Excel 文件(.xlsx 格式),支持单元格样式、公式、合并单元格等。
  • 替代老旧的 xlrd/xlwt,功能更全面。

安装

pip install openpyxl

极简示例

from openpyxl import Workbook, load_workbook

# 创建新Excel并写入数据
wb = Workbook()
ws = wb.active  # 获取活跃工作表
ws["A1"] = "姓名"
ws["B1"] = "年龄"
ws["A2"] = "张三"
ws["B2"] = 20
wb.save("test.xlsx")  # 保存文件

# 读取Excel数据
wb = load_workbook("test.xlsx")
ws = wb.active
print(ws["A2"].value)  # 输出:张三
print(ws["B2"].value)  # 输出:20

4. Playwright(现代自动化测试/爬虫库)

核心功能

  • 由微软开发,支持无头浏览器自动化(Chrome、Firefox、Safari 全兼容)。
  • 相比 Selenium 更轻量、速度更快,API 设计更简洁,内置等待机制(无需手动加 sleep)。
  • 可用于网页自动化操作、动态渲染页面爬虫(如 JavaScript 加载的内容)、UI 自动化测试。
  • 支持同步/异步两种调用方式,新手优先学同步版即可。

安装

# 安装库
pip install playwright
# 安装浏览器驱动(首次使用必须执行,会下载Chrome/Firefox/Safari驱动)
playwright install

极简示例

from playwright.sync_api import sync_playwright

# 启动浏览器(headless=False 显示浏览器窗口,True 为无头模式)
with sync_playwright() as p:
    # 选择浏览器:chromium/firefox/webkit
    browser = p.chromium.launch(headless=False)
    # 新建页面
    page = browser.new_page()
    # 访问网页
    page.goto("https://www.baidu.com")

    # 1. 输入并搜索(定位输入框,输入内容)
    page.locator("#kw").fill("Python Playwright")
    # 点击搜索按钮
    page.locator("#su").click()

    # 2. 等待页面加载并提取数据(等待标题出现)
    page.wait_for_selector("h3")
    # 提取所有搜索结果标题
    titles = page.locator("h3").all_text_contents()
    print("前5个搜索结果:")
    for title in titles[:5]:
        print(title)

    # 关闭浏览器
    browser.close()

核心优势(对比传统爬虫/自动化工具)

  1. 能爬取动态渲染页面(如需要登录、滚动加载、JS 渲染的内容),解决 Requests 无法处理的场景。
  2. 内置自动等待:无需手动设置 time.sleep(),会等待元素加载完成后再操作,稳定性更高。
  3. 支持截图/录屏page.screenshot(path="baidu.png") 可保存页面截图,便于调试。

五、其他常用库(快速了解)

库名 核心用途 安装命令
Scikit-learn 机器学习(分类、回归、聚类) pip install scikit-learn
TensorFlow/PyTorch 深度学习(神经网络) pip install tensorflow / pip install torch
Flask/Django Web 开发(轻量/全栈框架) pip install flask / pip install django
Pillow 图片处理(裁剪、滤镜、格式转换) pip install pillow
PyAutoGUI 键鼠自动化(模拟点击、输入) pip install pyautogui

总结

  1. 基础核心库:NumPy 是数值计算基石,Pandas 是数据处理核心,二者是数据分析的必备组合。
  2. 可视化库:Matplotlib 是基础,Seaborn 更适合统计可视化,优先掌握折线图、柱状图、热力图等常用图表。
  3. 实用工具库:基础爬虫用 Requests+BeautifulSoup4 处理静态页面,Playwright 适配动态页面/网页自动化;os/datetime/OpenPyXL 覆盖日常文件、系统、时间和 Excel 操作场景。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注