# Python 常见数据结构速查表 ## 1. 列表 list - 语法: ```python nums = [1, 2, 3] ``` - 特点: - 有序 - 可变 - 可放重复元素 - 常用操作: ```python nums.append(4) nums.remove(2) nums[0] nums[1:3] ``` ## 2. 元组 tuple - 语法: ```python point = (10, 20) ``` - 特点: - 有序 - 不可变 - 可放重复元素 - 常用操作: ```python point[0] len(point) point.count(10) ``` ## 3. 集合 set - 语法: ```python s = {1, 2, 3} ``` - 特点: - 无序 - 元素唯一 - 可变 - 常用操作: ```python s.add(4) s.remove(2) 3 in s ``` ## 4. 字典 dict - 语法: ```python stu = {"name": "Tom", "age": 18} ``` - 特点: - 键值对 - key 唯一 - 无序(Python 3.7+ 记录插入顺序) - 常用操作: ```python stu["name"] stu["age"] = 19 stu.keys() stu.values() ``` ## 5. 字符串 str - 语法: ```python msg = "hello" ``` - 特点: - 不可变 - 由字符组成 - 常用操作: ```python msg.lower() msg.upper() msg.strip() msg.split(" ") ``` ## 6. 范围 range - 语法: ```python r = range(5) ``` - 特点: - 表示一段连续整数 - 常用于循环 - 例子: ```python for i in range(5): print(i) ``` ## 7. 冰冻集合 frozenset - 语法: ```python fs = frozenset({1, 2, 3}) ``` - 特点: - 跟 set 类似 - 但不可变 - 用途: - 作为字典 key - 需要固定集合时 ## 8. 生成器/迭代器 - 例子: ```python gen = (x * x for x in range(5)) ``` - 特点: - 惰性计算 - 适合大数据/流式处理 ## 快速对比 - 列表:`[ ]`,可变,有序 - 元组:`( )`,不可变,有序 - 集合:`{ }`,去重,无序 - 字典:`{ key: value }`,键值对 - 字符串:`" "`,文本 - range:连续整数序列 ## 记忆口诀 - `[]` -> 列表 - `()` -> 元组 - `{}` -> 集合或字典(看里面是否是 `key: value`) - `""` -> 字符串 ## 常见使用场景 - 列表:存放多个值,易修改 - 元组:存放固定值,确保数据不变 - 集合:去重、快速查重 - 字典:映射关系,如姓名-年龄 - 字符串:文本处理 - range:循环计数