news 2026/5/1 9:46:22

Python 基础数据结构语法:列表、元组与字典

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python 基础数据结构语法:列表、元组与字典

该篇将集中介绍 Python 中三种重要的基础数据结构:列表(List)、元组(Tuple) 和 字典(Dict)的基本语法和常用操作。


1.列表[List]

定义

  • 使用方括号 [] 来定义一个列表。
  • 列表是有序且可变的数据集合,支持多种数据类型混合存储。
list_data = ['ho', 'op', 'pp']

常见操作

添加元素
  • append(item) - 在末尾添加单个元素。
  • insert(index, item) - 在指定位置插入元素。
  • extend(iterable) - 将另一个可迭代对象的所有元素逐一添加到当前列表中。
list_data.append('hi') # 添加元素 list_data.insert(1, 'he') # 插入元素 list_data.extend([11, 22]) # 扩展多个元素
删除元素
  • pop(index) - 移除并返回指定索引的元素,默认移除最后一个。
  • remove(value) - 移除第一个匹配值的元素。
  • del list[index] - 删除指定索引的元素。
list_data.pop(2) # 弹出索引为2的元素 list_data.remove('op') # 移除值为'op'的第一个元素 del list_data[1] # 删除索引为1的元素
修改元素
  • 直接通过索引来修改某个元素
list_data[0] = 'new_value'
enumerate() 函数
  • 用于将列表等可迭代对象转换为带索引的枚举对象
  • 返回 (索引, 值) 的元组对
  • 常与 for 循环配合使用
list1 = [10, 20, 30, 40, 50] for index, value in enumerate(list1): print(f'第{index + 1}个数:{value}')
排序和反转
  • sort() - 对列表进行排序(默认升序),可以通过参数 reverse=True 设置降序。
  • reverse() - 反转列表中的元素顺序。
list_data.sort() # 正序 list_data.sort(reverse=True) # 倒序 list_data.reverse() # 倒序
其他有用的方法
  • sum(list) - 计算数值型列表所有元素的总和。
  • len(list) - 获取列表长度。
  • in 关键字用于判断某元素是否存在于列表中。

2. 元组 (Tuple)

定义

  • 使用圆括号 () 定义。
  • 元组是有序但不可变的数据集合,一旦创建就不能被修改。
tuple_data = (1, 2, 3, 4, 5) single_element_tuple = (1,) # 注意单个元素必须加逗号

特点

  • 不允许增删改查以外的操作。
  • 支持切片访问。
  • 因其不变性,在某些情况下性能优于列表。
print(tuple_data[0]) # 访问第一个元素 sub_tuple = tuple_data[1:4] # 切片获取子元组

3. 字典 (Dict)

定义

  • 使用花括号 {} 或者 dict() 构造函数来定义。
  • 是一种键值对(key-value)映射关系的数据结构。
student = {'name': '张三', 'age': 14, 'class': '七年级一班'}

常见操作

增加/更新键值对
  • 直接赋值即可新增或更新已有键对应的值:
student['gender'] = '男' # 新增键值对 student['age'] = 15 # 更新已有的键值对
查询键值对
  • 通过键访问对应值:
print(student['name']) # 输出姓名 print(student.get('age'))
遍历字典
  • keys() - 返回所有的键组成的视图。
  • values() - 返回所有的值组成的视图。
  • items() - 返回包含键值对的元组视图。
for key in student.keys(): print(key) for value in student.values(): print(value) for key, value in student.items(): print(f"{key}: {value}")
删除键值对
  • del dict[key] - 删除特定键及其值。
  • pop(key) - 删除并返回指定键的值。
  • clear() - 清空整个字典。
del student['class'] # 删除'class'键值对 removed_value = student.pop('gender') # 弹出并返回'gender'键的值 student.clear() # 清空字典内容

总结

1.列表

  • 使用 [] 定义,有序可变
  • 支持 append()、insert()、extend() 添加元素,pop()、remove() 删除元素

2.元组

  • 使用 () 定义,有序不可变
  • 单元素需加逗号,如 (1,)

3.字典

  • 使用 {} 定义,键值对结构
  • 支持 get() 查询,keys()、values()、items() 遍历,直接赋值增改

三种结构各有特点:列表灵活可变,元组安全不可变,字典键值映射高效。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 4:55:20

边缘AI推理延迟高达500ms?教你4步优化至50ms以内

第一章:边缘AI推理延迟优化的背景与挑战随着物联网设备和实时智能应用的迅猛发展,边缘AI成为推动人工智能落地的关键技术。将AI模型部署在靠近数据源的边缘设备上,不仅能降低云端通信开销,还能提升隐私保护与系统响应速度。然而&a…

作者头像 李华
网站建设 2026/5/1 6:47:46

Caffeine vs Guava Cache 深度对比:特性、性能与选型实践

Caffeine 是 Guava Cache 的「现代替代方案」—— 由 Guava Cache 核心贡献者 Ben Manes 开发,完全兼容 Guava Cache 的 API 设计,同时通过更优的算法和并发模型实现了性能碾压。本文从核心原理、性能表现、功能特性、使用示例、选型建议 五个维度&#…

作者头像 李华
网站建设 2026/5/1 6:58:37

【千万级系统稳定性保障】:环境Agent最佳监测频率配置方案曝光

第一章:环境 Agent 的监测频率在分布式系统与云原生架构中,环境 Agent 扮演着关键角色,负责采集主机状态、资源使用率及应用运行指标。监测频率的设定直接影响数据实时性与系统开销之间的平衡。过高频率可能导致资源争用,而过低则…

作者头像 李华
网站建设 2026/4/27 18:00:01

光伏储能系统仿真手把手:从MPPT到电池协同控制

PV光伏阵列Boost DCDC变换器负载双向DCDC变换器锂离子电池系统 Matlab/Simulink仿真模型 模型主要包括以下几个部分: PV光伏阵列、Boost DC/DC 变换器、负载Load、双向DC/DC变换器、锂离子电池模型、PV侧控制模块、锂离子电池侧控制模块以及观测模块。 PV控制模块采…

作者头像 李华
网站建设 2026/5/1 8:11:02

C 语言学习历程:(第二章)数据类型和变量・程序的 “数据骨架”

第二章:数据类型和变量 文章目录第二章:数据类型和变量1. 数据类型及长度和取值范围1.1 字符型1.2 整形1.3 浮点型1.4 布尔类型1.5 sizeof1.6 取值范围2.变量2.1 变量命名规则:2.2 变量分类3. 操作符3.1 算数操作符3.2 赋值操作符3.3 单目操作…

作者头像 李华
网站建设 2026/5/1 8:10:36

手残党福音!西门子WinCC报表控件真能一键出报表

西门子wincc报表控件,支持自定义模版,支持打印预览,支持打印PDF,支持导出Excel表格,支持自定义打印区域,可显示最大值,最小值,平均值,可求和。 非脚本制作,不…

作者头像 李华