python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python常用内置标准库

Python常用内置标准库超详细学习笔记

作者:Warson_L

Python标准库是Python编程语言的内置模块集合,它提供了广泛的功能和工具,用于开发各种类型的应用程序,这篇文章主要介绍了Python常用内置标准库的相关资料,需要的朋友可以参考下

前言

这篇笔记将带你走进 Python 的“百宝箱”。Python 被称为“自带电池”(Batteries Included)的语言,就是因为它内置了极其丰富的标准库,无需安装即可直接 import 使用。

1. 时间与日期:datetime

处理时间、日期、时区转换的利器。

from datetime import datetime, timedelta
# 1. 获取当前时间
now = datetime.now()
print(f"当前时间: {now}")
# 2. 格式化输出 (strftime)
print(now.strftime("%Y-%m-%d %H:%M:%S")) # 2023-10-27 14:30:05
# 3. 字符串转时间对象 (strptime)
date_str = "2023-01-01"
dt_obj = datetime.strptime(date_str, "%Y-%m-%d")
# 4. 时间计算 (timedelta)
yesterday = now - timedelta(days=1)
future = now + timedelta(hours=2)

2. 数学与随机数:math&random

math:高精度数学计算

import math
print(math.pi)        # 圆周率 3.14159...
print(math.sqrt(16))  # 开平方 4.0
print(math.ceil(3.1)) # 向上取整 4

random:生成伪随机数

import random
print(random.random())       # 0到1之间的浮点数
print(random.randint(1, 10)) # 1到10之间的随机整数(含10)
fruits = ["苹果", "香蕉", "橙子"]
print(random.choice(fruits)) # 随机选一个
items = [1, 2, 3, 4, 5]
random.shuffle(items)        # 打乱列表顺序

3. 数据交换格式:json

JSON 是互联网最通用的数据格式。Python 字典与 JSON 字符串的转换非常简单。

import json
data = {"name": "Jojo", "age": 25, "is_admin": False}
# 1. 编码:字典 -> JSON 字符串 (dumps)
json_str = json.dumps(data, indent=4) # indent让输出更漂亮
# 2. 解码:JSON 字符串 -> 字典 (loads)
parsed_data = json.loads(json_str)
# 3. 处理文件 (dump/load)
with open("config.json", "w") as f:
    json.dump(data, f) # 直接写入文件

4. 系统接口与参数:sys

主要用于与 Python 解释器和系统环境交互。

import sys
# 1. 获取命令行参数 (常用语脚本传参)
# 运行命令: python script.py arg1 arg2
print(sys.argv) 
# 2. 退出程序
# sys.exit(0) # 0表示正常退出
# 3. 模块搜索路径
# print(sys.path) 
# 4. 查看系统平台
print(sys.platform) # win32, darwin(Mac), linux

5. 高级容器数据类型:collections

它是内置 list/dict/tuple 的增强版。

from collections import Counter, defaultdict
# Counter 示例:统计词频
text = "apple banana apple orange apple banana"
counts = Counter(text.split())
print(counts) # Counter({'apple': 3, 'banana': 2, 'orange': 1})
print(counts.most_common(1)) # 获取出现次数最多的
# defaultdict 示例
d = defaultdict(int) # 默认值为 0
d["count"] += 1      # 不会报错,直接从0加到1

6. 正则表达式:re

用于复杂的文本搜索、替换和匹配。

import re
text = "我的邮箱是 jojo_123@example.com,请联系我。"
# 匹配邮箱的简单正则
pattern = r'[a-zA-Z0-9_]+@[a-zA-Z0-9]+\.[a-zA-Z]+'
# 搜索
match = re.search(pattern, text)
if match:
    print(f"找到邮箱: {match.group()}")
# 替换
clean_text = re.sub(pattern, "[HIDDEN]", text)
print(clean_text)

什么时候该用哪个库?

需求推荐库
处理文件路径、创建文件夹os / pathlib
读取/写入 CSV 数据csv
网络请求(标准库版)urllib.request(虽然大家更爱用第三方 requests
压缩和解压文件zipfile / tarfile
计算代码执行时间timeit
记录运行日志logging

总结建议

  1. 先查标准库:在准备自己写一个复杂的功能前,先搜索“Python standard library [功能名]”,通常已经有现成的解决方案了。
  2. 避免重复造轮子:比如 Counter 计数比你自己写 for 循环统计要快得多,也简洁得多。
  3. 阅读文档:Python 官方文档(docs.python.org)是学习这些库的最好地方。

到此这篇关于Python常用内置标准库的文章就介绍到这了,更多相关Python常用内置标准库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文