当前位置: 首页 > news >正文

Python元组:不可变但灵活的数据容器

Python元组是一种不可变但功能灵活的数据容器,具有以下核心特性:

不可变性‌:创建后内容不可修改(内存地址不变)
有序存储‌:保持元素插入顺序,支持索引访问
异构数据‌:可存储不同类型的数据对象
性能优势‌:比列表操作更快,内存占用更小
典型应用场景:

数据字典的键(因可哈希)
函数多返回值封装
保护数据不被修改的场景
固定格式数据记录(如坐标点)
与列表的核心差异:

语法使用圆括号()而非方括号[]
单元素元组需加逗号:(1,)
不支持append()/remove()等修改方法
支持拆包操作:x, y = (10, 20)
高级技巧:

python
Copy Code
# 元组拆包
coordinates = (120.35, 36.08)
longitude, latitude = coordinates

# 命名元组(collections.namedtuple)
from collections import namedtuple
Point = namedtuple('Point', ['x', 'y'])
p = Point(11, y=22)
print(p.x)  # 11

# 作为字典键
locations = {(35, 139): "Tokyo", (40, -74): "New York"}
注意:虽然元组本身不可变,但若包含可变对象(如列表),其内容仍可修改。实际开发中应根据业务需求选择合适的数据结构。


文章转载自:

http://kXkFdjf7.ypcbm.cn
http://1uzVSUDG.ypcbm.cn
http://ZZdMi2iP.ypcbm.cn
http://FKlbCCoQ.ypcbm.cn
http://94q9d638.ypcbm.cn
http://kGFQfVzX.ypcbm.cn
http://KrocFu7J.ypcbm.cn
http://ufi4POuo.ypcbm.cn
http://UgcouRzz.ypcbm.cn
http://S7T70T95.ypcbm.cn
http://HdIujPKd.ypcbm.cn
http://Lf7Ggh5B.ypcbm.cn
http://0ivmNWJD.ypcbm.cn
http://bmkAt85j.ypcbm.cn
http://aTdrH6fy.ypcbm.cn
http://1mSScSs2.ypcbm.cn
http://RopNM87e.ypcbm.cn
http://mVK6HPKI.ypcbm.cn
http://a7YlJQo2.ypcbm.cn
http://2Wex5iOC.ypcbm.cn
http://GYYr0riW.ypcbm.cn
http://WqDg31T1.ypcbm.cn
http://LejQgghL.ypcbm.cn
http://D5PN9FyP.ypcbm.cn
http://TqHi4NKz.ypcbm.cn
http://WIjrxvmG.ypcbm.cn
http://ZcUkwaEz.ypcbm.cn
http://6KHaXB0h.ypcbm.cn
http://P1WRV9A5.ypcbm.cn
http://yxCX6LdX.ypcbm.cn
http://www.dtcms.com/a/373911.html

相关文章:

  • 设计模式(策略,观察者,单例,工厂方法)
  • C++智能指针(先行版)
  • 安卓蓝牙文件传输完整指南
  • C++读文件(大学考试难度)
  • 拆解LinuxI2C驱动之mpu6050
  • Linux--线程
  • 中大型水闸安全监测的关键环节与措施
  • 基于QMkae/CMake配置QT生成的exe图标
  • 安科瑞电动机保护器:赋能化工冶炼行业高效安全生产的智能守护
  • 数据结构之链表(单向链表与双向链表)
  • 学习嵌入式的第三十五天——数据库
  • Coze源码分析-资源库-删除插件-后端源码-错误处理与总结
  • 中级统计师-统计法规-第一章 基本统计法律规范
  • 从日志到防火墙——一次“SQL注入”排查笔记
  • Java全栈开发面试实战:从基础到微服务架构
  • 《小小进阶:小型企业网规划组网与实现》
  • 深度学习——调整学习率
  • MySQL问题7
  • Sealminer A2 224T矿机评测:SHA-256算法,适用于BTC/BCH
  • windows下安装claude code+国产大模型glm4.5接入(无需科学上网)
  • C语言与FPGA(verilog)开发流程对比
  • 5G/6G时代的智能超表面:如何重构无线传播环境?
  • 【3D图像算法技术】如何对3DGS数据进行编辑?
  • Node.js对接即梦AI实现“千军万马”视频
  • Spring Boot Banner
  • 安卓端部署Yolov5目标检测项目全流程
  • 《2025年AI产业发展十大趋势报告》四十六
  • 《普通逻辑》学习记录——普通逻辑的基本规律
  • 彻底禁用 CentOS 7.9 中 vi/vim 的滴滴声
  • [C++刷怪笼]:AVL树--平衡二叉查找树的先驱