第 3 章 容器类型(1)
朱雷
第 3 章 容器类型
在我们的日常生活中,有一类物品比较特别,它们自身并不提供“具体”的功能,最大的用处就是存放其他东西——小学生用的文具盒、图书馆的书架,都可归入此类物品,我们可以统称它们为“容器”。
而在代码世界里,同样也有“容器”这个概念。代码里的容器泛指那些专门用来装其他对象的特殊数据类型。在 Python 中,最常见的内置容器类型有四种:列表、元组、字典、集合。
列表(list)是一种非常经典的容器类型,通常用来存放多个同类对象,比如从 1 到 10 的所有整数:
元组(tuple)和列表非常类似,但跟列表不同,它不能被修改。这意味着元组完成初始化后就没法再改动了:
字典(dict)类型存放的是一个个键值对(key: value)。它功能强大,应用广泛,就连 Python 内部也大量使用,比如每个类实例的所有属性,就都存放在一个名为 dict 的字典里:
执行后输出:
集合(set)也是一种常用的容器类型。它最大的特点是成员不能重复,所以经常用来去重(剔除重复元素):
这四种容器类型各有优缺点,适用场景也各不相同。本章将简单介绍每种容器类型的特点,深入分析它们的应用场景,帮你厘清一些常见的概念。更好地掌握容器能帮助你写出更高效的 Python 代码。
3.1 基础知识
在基础知识部分,我将按照列表、元组、字典、集合的顺序介绍每种容器的基本操作,并在其中穿插一些重要的概念解释。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文深入探讨了 Python 容器类型,包括列表、元组、字典和集合,强调了可变和不可变对象的区别,并介绍了函数调用传参机制。特别详细介绍了元组的特性,包括元组推导式和具名元组的使用方法。对于字典,文章详细介绍了常用操作、遍历、增加和修改操作,以及字典推导式和有序性与无序性的区别。还介绍了集合的特点和常用操作,以及不可变集合 frozenset 的使用方法。此外,文章还介绍了集合运算,包括求交集、并集、差集等操作,并最后介绍了深拷贝与浅拷贝的概念。 通过案例故事展示了如何设计自定义字典类型,利用它重构数据分析脚本。作者设计了一个脚本来分析网站访问日志,将请求数据按路径分组,并根据耗时将其划分为不同的性能等级,从而找到需要优化的页面。作者通过枚举类型和主逻辑实现了数据统计和输出结果。尽管脚本功能正常,但作者认为代码写得不太好,逻辑复杂,存在零碎的字典操作。这个案例故事展示了如何利用 Python 容器类型和自定义数据结构来解决实际问题,为读者提供了实用的技术参考。 总体而言,本文内容丰富,适合读者快速了解 Python 容器类型的特点和使用方法,对于想深入了解 Python 容器类型及其应用的读者具有很高的参考价值。文章通过详细介绍容器类型的特性和案例故事的实际应用,为读者提供了全面的技术知识和实践经验。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 工匠:案例、技巧与工程实践》
《Python 工匠:案例、技巧与工程实践》
立即购买
登录 后留言
全部留言(1)
- 最新
- 精选
- rs勿忘初心3.15这段代码看着不完整? >>> d1 = {'foo': 3, 'bar': 4} >>> {'foo': 30}2024-03-21归属地:北京
收起评论