跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

常用 Python 内置与第三方模块详解

Python 开发中常用的内置模块与第三方模块。内容涵盖 math、re、datetime、os、json、collections 等标准库的具体用法与代码示例,以及 pip 环境管理、虚拟环境配置方法。同时梳理了数据分析、爬虫、Web 开发、机器学习等领域的核心第三方库,并提供了导入顺序、异常处理、依赖锁定等最佳实践建议,旨在帮助开发者高效利用 Python 生态完成实际任务。

林间仙子发布于 2025/2/6更新于 2026/8/1738 浏览
常用 Python 内置与第三方模块详解

前言

Python 语言之所以强大且流行,很大程度上归功于其丰富的标准库和庞大的第三方生态。模块(Module)是 Python 代码组织的基本单位,它将相关的功能封装在一起,便于复用和维护。理解并熟练使用各类模块,是提升开发效率的关键。

本文将对 Python 常用的内置模块和第三方模块进行系统性梳理,涵盖基础工具、数据处理、网络通信及自动化运维等场景,并提供最佳实践建议。

什么是 Python 模块?

模块本质上是一个包含 Python 定义和语句的文件。文件名即为模块名,后缀为 .py。通过 import 语句,开发者可以调用模块中定义的函数、类或变量,而无需重复编写底层逻辑。这类似于工具箱中的专用工具,只需按需取用。

一、常用内置模块

Python 内置了约 200 多个标准库模块,无需安装即可直接使用。以下是开发中最核心的一组:

1. math 模块 提供数学运算函数,适用于科学计算、算法实现等场景。

import math

# 计算平方根
sqrt_value = math.sqrt(25)
print("Square Root:", sqrt_value)

# 角度转弧度并计算正弦值
sin_value = math.sin(math.radians(30))
print("Sine Value:", sin_value)

# 向上取整
ceil_val = math.ceil(4.2)
print("Ceil:", ceil_val)

2. re 模块 正则表达式处理的核心模块,支持复杂的文本匹配、查找和替换。

import re

# 查找所有数字
pattern = r"\d+"
text = "There are 123 apples and 456 oranges."
matches = re.findall(pattern, text)
print("Matches:", matches)  # ['123', '456']

# 替换文本
result = re.sub(r"\d+", "[NUM]", text)
print("Replaced:", result)

3. datetime 模块 用于日期时间的获取、格式化及计算。

import datetime

# 获取当前时间
now = datetime.datetime.now()
print("Current Time:", now)

# 格式化输出
formatted = now.strftime("%Y-%m-%d %H:%M:%S")
print("Formatted:", formatted)

# 时间差计算
delta = datetime.timedelta(days=1)
future = now + delta
print("Tomorrow:", future)

4. os 与 pathlib 模块 用于操作系统交互,文件路径操作推荐使用 pathlib(Python 3.4+),更面向对象。

import os
from pathlib import Path

# 获取当前工作目录
cwd = os.getcwd()
print("Working Dir:", cwd)

# 列出文件
files = os.listdir(cwd)

# 使用 pathlib 拼接路径
p = Path.cwd() / "data" / "file.txt"
if p.exists():
    print(f"File exists at {p}")

5. json 模块 处理 JSON 数据格式,常用于 API 交互和数据持久化。

import json

data = {"name": "Alice", "age": 25}

# 字典转 JSON 字符串
json_str = json.dumps(data, ensure_ascii=False)
print("JSON String:", json_str)

# JSON 字符串转字典
parsed = json.loads(json_str)
print("Parsed Data:", parsed)

6. collections 模块 提供特殊的数据容器,如 defaultdict 和 Counter。

from collections import defaultdict, Counter

# 默认字典,避免 KeyErrors
word_counts = defaultdict(int)
words = ["apple", "banana", "apple"]
for w in words:
    word_counts[w] += 1
print("Word Counts:", dict(word_counts))

# 元素计数
counts = Counter(words)
print("Counts:", counts)

7. csv 模块 专门处理逗号分隔值文件,适合报表导入导出。

import csv

# 写入 CSV
with open('data.csv', 'w', newline='', encoding='utf-8') as f:
    writer = csv.writer(f)
    writer.writerow(['Name', 'Age'])
    writer.writerow(['Bob', 30])

# 读取 CSV
with open('data.csv', 'r', encoding='utf-8') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

8. sys 模块 与解释器交互,获取命令行参数、退出状态等。

import sys

# 获取命令行参数
args = sys.argv
print("Arguments:", args)

# 获取 Python 版本
version = sys.version
print("Version:", version)

9. logging 模块 替代 print 的日志记录系统,支持分级和文件输出。

import logging

logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(message)s')
logging.info("Application started")
logging.error("Something went wrong")

二、第三方模块生态

Python 的第三方库数量庞大,几乎覆盖所有技术领域。管理第三方依赖通常使用 pip 工具。

1. 环境管理

为避免依赖冲突,建议使用虚拟环境(venv)隔离项目依赖。

# 创建虚拟环境
python -m venv venv

# 激活环境 (Windows)
venv\Scripts\activate
# 激活环境 (Linux/Mac)
source venv/bin/activate

# 安装依赖
pip install requests pandas

# 导出依赖列表
pip freeze > requirements.txt

2. 主要领域推荐库

  • 数据分析与科学计算:

    • pandas:高效的数据结构和分析工具。
    • numpy:多维数组对象和数学函数库。
    • matplotlib / seaborn:数据可视化绘图。
  • 网络爬虫与请求:

    • requests:简洁优雅的 HTTP 请求库。
    • scrapy:强大的爬虫框架。
    • beautifulsoup4:HTML/XML 解析。
  • Web 开发:

    • flask:轻量级 Web 框架。
    • django:全功能 Web 框架。
  • 机器学习与 AI:

    • scikit-learn:经典机器学习算法。
    • tensorflow / pytorch:深度学习框架。
  • 自动化与脚本:

    • subprocess:执行系统命令。
    • schedule:定时任务调度。
    • openpyxl:Excel 文件读写。

三、最佳实践与注意事项

  1. 导入顺序:遵循 PEP 8 规范,先标准库,再第三方库,最后本地模块,中间用空行分隔。
  2. 异常处理:在使用外部资源(如网络、文件)时,务必使用 try-except 捕获潜在错误。
  3. 依赖锁定:生产环境中应锁定依赖版本(如 requirements.txt),确保部署一致性。
  4. 避免全局污染:尽量将代码封装在函数或类中,减少全局变量的使用。

四、总结

掌握 Python 模块的使用是进阶开发的基石。内置模块解决了大部分基础需求,而第三方库则扩展了语言的边界。建议在实际项目中多查阅官方文档(如 https://docs.python.org/zh-cn/3/library/index.html),根据具体场景选择合适的工具,并保持对新技术的关注。通过合理的环境管理和代码规范,可以构建出稳定、可维护的 Python 应用。

目录

  1. 前言
  2. 什么是 Python 模块?
  3. 一、常用内置模块
  4. 计算平方根
  5. 角度转弧度并计算正弦值
  6. 向上取整
  7. 查找所有数字
  8. 替换文本
  9. 获取当前时间
  10. 格式化输出
  11. 时间差计算
  12. 获取当前工作目录
  13. 列出文件
  14. 使用 pathlib 拼接路径
  15. 字典转 JSON 字符串
  16. JSON 字符串转字典
  17. 默认字典,避免 KeyErrors
  18. 元素计数
  19. 写入 CSV
  20. 读取 CSV
  21. 获取命令行参数
  22. 获取 Python 版本
  23. 二、第三方模块生态
  24. 1. 环境管理
  25. 创建虚拟环境
  26. 激活环境 (Windows)
  27. 激活环境 (Linux/Mac)
  28. 安装依赖
  29. 导出依赖列表
  30. 2. 主要领域推荐库
  31. 三、最佳实践与注意事项
  32. 四、总结
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • OpenClaw 配置飞书机器人完整指南
  • 本地代码文件夹上传至 GitHub 详细步骤与命令集合
  • C++ 模板与手写代码的效率对比(上)
  • Oracle 索引创建、维护与优化要点
  • 网络安全基础与黑客技术入门知识详解
  • OpenHashTab 文件哈希校验工具使用指南
  • 无人机智能巡检系统架构与大疆云端集成方案
  • MySQL 错误 1130:Host 不被允许连接的原因与解决方案
  • Java Swing 文本输入框交互与事件监听实战
  • Python Web 开发:基于 Flask 与 MicroPython 的 IoT 边缘推理平台
  • ROG 携超神 27 二代显示器与 AR 眼镜亮相 CES 2026
  • 具身智能机器人运控通讯架构分析与实现方案
  • 前端面试核心考点与高频题库汇总
  • C++ STL list 容器详解:使用与模拟实现
  • CycleGAN 详解与实现:图像风格转换技术
  • Stable Diffusion 新手入门:AI 绘画基础与指令详解
  • AWS Kiro 账号池管理系统:OpenAI 兼容代理与 OIDC 认证
  • Ubuntu 系统更新全攻略
  • Replay AI 翻唱工具教程:音轨分离与音色替换
  • PaddlePaddle 镜像运行 Stable Diffusion 的可行性分析

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online