Python基础 – Python标准库

 Python标准库

项目:使用核心Python标准模块(mathrandomdatetimetimeos)构建一个“工具包”。


01. 学习目标

通过本节课的学习,您将能够:

  • 有效使用Python的内置标准库
  • 使用math进行数学运算
  • 使用random生成随机数
  • 使用datetimetime处理日期和时间
  • 使用os管理文件和文件夹

02. 问题场景

您正在开发一个小型自动化程序,需要进行数学计算、随机数据生成、时间管理和文件处理的工具——所有这些都不需要安装额外的库。

幸运的是,Python的标准库已经提供了您所需的一切。


03. 第一步 – math模块(数学运算)

提供平方根、幂、阶乘等数学函数,以及常数如π。

import math

print(math.sqrt(16))    # 平方根
print(math.pow(2, 3))   # 幂
print(math.factorial(5)) # 阶乘
print(math.pi)          # 圆周率常数

print(math.ceil(3.2))   # 向上取整
print(math.floor(3.9))  # 向下取整

04. 第2步 – 随机模块(随机数生成)

生成随机整数、选择或样本——对于游戏、模拟和测试非常有用。

import random
print(random.randint(1, 6))               # 随机整数 (1–6)
print(random.choice(["苹果", "香蕉", "葡萄"]))  # 随机选择
print(random.sample(range(1, 46), 6))    # 彩票号码

05. 第三步 – datetime 模块(日期和时间处理)

处理当前日期、格式转换和时间计算。

from datetime import datetime, timedelta

now = datetime.now()
print("现在:", now)
d = datetime(2025, 1, 1, 9, 0)
print("特定日期:", d)

tomorrow = now + timedelta(days=1)
print("明天:", tomorrow)

date_str = "2025-09-11 18:30"
dt = datetime.strptime(date_str, "%Y-%m-%d %H:%M")
print("解析结果:", dt)

print(dt.strftime("%Y-%m-%d %H:%M"))
print(dt.strftime("%Y년 %m월 %d일 %H시 %M분"))

06. 第四步 – 时间模块(延迟和执行控制)

暂停程序或测量执行持续时间。

import time

print("等待 3 秒...")
time.sleep(3)
print("完成!")

07. 第五步 – os 模块(操作系统交互)

管理文件、文件夹和路径。

import os

print("当前工作目录:", os.getcwd())
os.mkdir("test_folder")
os.rmdir("test_folder")

08. 第六步 – 实践示例

示例 1:圆的面积计算器

import math

r = 5
area = math.pi * r**2
print("圆的面积:", area)

示例 2:乐透号码生成器

import random

lotto = random.sample(range(1, 46), 6)
print("乐透号码:", lotto)

示例 3:今天的日期格式化器

from datetime import datetime

today = datetime.today()
print("今天:", today.strftime("%Y-%m-%d"))

09. 第7步 – 小项目:实用工具包

将所有模块组合成一个有用的“实用工具包”。

import math, random, time, os
from datetime import datetime

print("--- 工具包 ---")

# 1. 数学
r = 4
print("圆的面积:", math.pi * r**2)

# 2. 随机数
numbers = random.sample(range(1, 46), 6)
print("随机数字:", numbers)

# 3. 日期与时间
print("现在:", datetime.now().strftime("%Y-%m-%d %H:%M"))

# 4. 延迟示例
print("处理中...")
time.sleep(2)
print("完成!")

# 5. 操作系统
print("当前文件夹:", os.getcwd())

输出示例:

--- 实用工具包 ---
圆的面积: 50.26548245743669
随机数字: [8, 21, 34, 45, 12, 3]
现在: 2025-10-04 16:10
正在处理...
完成!
当前文件夹: /Users/sabin/projects

10. 反思

您已经学习了如何:

  • 使用核心模块(mathrandomdatetimetimeos
  • 格式化和计算日期
  • 生成随机序列和延迟
  • 安全地与您的文件系统交互
  • 仅使用内置的 Python 功能构建一个完整的实用工具包

更多