如何快速学习Python数据结构
从定义开始
字符串:不可变的序列
列表:可变的序列
元组:不可变的序列
字典:可变的键值对映射关系
集合:可变的非序列
对于这些数据结构要学习的其实就是对它们中的元素进行添加、删除、修改、查询的功能。也就是增、删、改、查。
第一:可变的就有增、删、改、查的全部功能,不可变的就没有增、删、改的功能。
第二:序列的是通过索引和切片来查询元素的,不是序列的键值对映射关系是通过键获取值的。
第三:集合即不是序列也没有键值对映射关系,因此无法从集合中获取元素。
从以上三点可以从大方向掌握对这五种数据结构的基本操作:
- 字符串是不可变的序列,因此不能对字符串中的元素进行添加、删除、修改,只能从字符串中通过索引和切片获取(也就是查询元素),字符串的重点在字符串的函数,差不多有30多个是要熟练使用。
- 列表是可变的序列。因此可以对列表中的元素进行添加、删除、修改,查询的。每种操作都有对应的函数,例如添加元素可以用append()、insert()、extend(),每个函数都有自己的特点,满足在不同的情况中使用。同样删除也有对应的函数,需要先把这些功能搞清楚,再去了解函数的语法。列表元素修改的原理就是为这个索引位置重新赋值,先使用索引定位到这个位置,然后使用赋值号’=‘赋值即可。例如list1[0] = ‘a’。
- 元组是不可变的序列。因此元组没有对元素增、删、改的功能,只能使用索引和切片对元素进行查询。除了增删改外,其他功能基本和列表一样。
- 字典是可变的键值对映射。可以对键值对进行添加、删除、修改,查询。然后会发现一个很有趣的操作,例如dict1[‘键1’]=’值‘。如果这个键不存在,就添加,如果存在这个键就修改,这两个功能语法一样。其次查询也可以称为获取,直接使用键获取就可以。
- 集合可以看错是只有键没有值的字典,字典的键又不能重复,因此集合可以用来去掉重复值。集合是可变的,因此可以添加删除元素。但是由于集合不是序列没有索引,也没有键值对的关系,因此无法从集合中查询元素,因此也没有办法修改。修改的前提是要找到这个元素,然后重新赋值。
通过对比可以很快将这些数据结构的操作记住,然后再去使用具体的函数进行操作,至于函数的语法是在不断的使用过程中记忆的。千万不要死记硬背函数语法!!!
对比优劣
列表VS字符串
- 列表和字符串都是序列,元素之间有先后顺序关系。
- 字符串是不可变的序列,列表是可变的序列。
- 字符串中每个元素只能存储字符,而列表可以存储任意类型。
- 列表和字符串都是可迭代对象。
- 可以将多个字符串拼接为一个。函数:result = " ".join(seq)
字典 VS 列表
- 都是可变容器。
- 获取元素方式不同,列表用索引,字典用键。
- 字典的插入,删除,修改的速度快于列表。
- 列表的存储是有序的,字典的存储是无序的。
- 总结:
列表:
优点:因为根据索引获取元素,所以查找更为灵活(第一个、最后一个…)
缺点:查找速度不如字典快,根据索引查找代码可读性不高
适用性:存储单一维度的数据(疫情信息)
字典:
优点:因为根据键获取元素,所以查找速度快、代码可读性高.
缺点:获取元素不如列表灵活
适用性:存储多个维度的数据(地区、新增、确诊、治愈)
掌握以上特点,建立自己的知识框架,然后再将对应功能的函数添加都这个知识框架中,就可以迅速的掌握这些数据结构了。
知识框架如图所示:

这部分内容是python基础中非常重要的基础,必须数量使用各种操作,才能展开后面的应用。
本文详细介绍了Python中的五种基本数据结构:字符串、列表、元组、字典和集合。强调了它们的可变性、操作方式及应用场景。字符串是不可变序列,适合查询;列表是可变序列,支持增删改查;元组类似列表但不可变;字典是可变的键值对,提供快速查找;集合用于存储无序且不重复的元素。通过对比分析,帮助读者快速掌握这些数据结构的特点和操作技巧,为后续的Python编程奠定坚实基础。
1464

被折叠的 条评论
为什么被折叠?



