Python编程实战 - Python基础入门 - 容器的常用操作与应用

在前几节中,我们分别学习了 Python 中的四种基础容器类型:列表(list) 、元组(tuple) 、字典(dict) 和 集合(set)。 这些容器是 Python 编程的核心,它们不仅可以存储数据,还能灵活地进行各种操作,比如增删改查、排序、去重、遍历等。 本节我们将系统地讲解容器的常见操作与应用场景,帮助你真正掌握它们的使用之道。


一、容器类型回顾

类型 是否可变 是否有序 是否允许重复 常用场景
list 列表 ✅ 可变 ✅ 有序 ✅ 允许 存放有序数据、动态修改
tuple 元组 ❌ 不可变 ✅ 有序 ✅ 允许 存放固定数据集
dict 字典 ✅ 可变 ✅ 有序(3.7+) ❌ key 唯一 键值映射、快速查找
set 集合 ✅ 可变 ❌ 无序 ❌ 不允许 去重、集合运算

二、通用操作

Python 中许多操作可以通用于多种容器类型:

1. 成员判断

python 复制代码
nums = [1, 2, 3]
print(2 in nums)       # True
print(5 not in nums)   # True

无论是列表、元组、字典还是集合,都可以使用 in 和 not in 判断是否包含某个元素。 对于字典,判断的对象是键(key)。


2. 长度计算

python 复制代码
data = {'a': 1, 'b': 2}
print(len(data))  # 2

len() 可用于计算容器内元素数量。


3. 遍历容器

  • 遍历列表或元组:

    python 复制代码
    for x in [1, 2, 3]:
        print(x)
  • 遍历字典:

    python 复制代码
    for k, v in {'a': 1, 'b': 2}.items():
        print(k, v)
  • 遍历集合:

    python 复制代码
    for item in {'apple', 'banana'}:
        print(item)

三、列表常用操作总结

python 复制代码
nums = [3, 1, 2]
nums.append(4)       # 追加
nums.insert(1, 5)    # 插入
nums.remove(3)       # 删除
nums.sort()          # 排序
nums.reverse()       # 反转
print(nums)

应用场景: 数据动态维护、按条件筛选、排序结果输出。


四、字典常用操作总结

python 复制代码
info = {'name': 'Tom', 'age': 20}
info['city'] = 'Beijing'       # 新增键值
info['age'] = 21               # 修改
del info['name']               # 删除键
print(info.get('city'))        # 安全取值

应用场景: 存储结构化数据、配置表、计数统计等。


五、集合常用操作总结

python 复制代码
a = {1, 2, 3}
b = {3, 4, 5}
print(a | b)  # 并集 {1,2,3,4,5}
print(a & b)  # 交集 {3}
print(a - b)  # 差集 {1,2}

应用场景: 去重、集合逻辑运算、快速判断元素是否存在。


六、容器嵌套与综合应用

Python 的容器可以相互嵌套,灵活性极强:

python 复制代码
students = [
    {'name': 'Alice', 'scores': [90, 85, 92]},
    {'name': 'Bob', 'scores': [70, 88, 95]}
]
for s in students:
    avg = sum(s['scores']) / len(s['scores'])
    print(s['name'], '平均分:', avg)

应用场景: 学生成绩系统、购物车、配置文件解析等。


七、总结

操作类别 示例 适用容器
成员判断 x in container list / tuple / dict / set
长度计算 len(container) 所有
遍历 for item in container 所有
增删改查 append, remove, del list / dict / set
排序 sort, sorted list / dict(配合 key)
集合运算 ` , &, -` set

八、实战练习:统计单词出现频率

python 复制代码
text = "python is easy and python is powerful"
words = text.split()
count = {}
for w in words:
    count[w] = count.get(w, 0) + 1
print(count)

输出:

arduino 复制代码
{'python': 2, 'is': 2, 'easy': 1, 'and': 1, 'powerful': 1}

这段代码用字典完成了简单的词频统计,是容器综合应用的典型示例。


结语: 掌握容器的常用操作,是从"会写代码"到"写出优雅代码"的关键一步。 在后续章节中,我们将继续深入 Python 的函数、模块与面向对象编程,让你的编程技能更上一层楼。

相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
默_笙4 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
qq_426003964 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
胡写代码4 天前
别再前后端各写一套表单校验了
java·后端
长沙三为智能科技4 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
大勇前进4 天前
原生 PHP 还是 Laravel?小项目到底要不要上框架
后端