06Python的多元数据结构--元组tuple

218 阅读2分钟

一、什么是元组

元组: 元组tuple像是一个列表list,但是,它内部的值不可被修改。元组是一个有序的、不可变的数据结构

元组和列表之间是可以互相转换的

列表和元组的对比

image.png

已经有列表了,为什么还需要元组?

  • 元组tuple 对于大型数据处理速度优于列表list ,如果你有一个常量集需要经常遍历(for),那么元组的效率优于列表
  • 元组tuple由于其无法“写入”的特点,放在元组内部的数据自然就有一个“写保护”,类似我们的sd卡、cf卡或者部分U盘
  • 特别注意-1:当函数(方法)返回的数据大于一个时,一般以元组形式返回
  • 特别注意-2:由于元组的“写保护”模式,函数可以按照元组内部元素的位置顺 序接收元组的数据

二、元组支持什么数据类型

image.png

三、元组的基本特性

增加

  • 支持空元组创建

删除

  • 仅支持元组整体删除

查询

  • 支持元祖数据查询(基于下标、索引、index)
  • 支持切片查询
  • 支持第一级元素长度统计

四、如何声明一个元组

方法一:空值创建 tuple_data = tuple()

方法二:空置创建 tuple_data = ()

特别方法 : 单个值创建 tuple_data = ('北京',) 必须要有逗号以区分该类型为元组

特别方法 :多值无括弧创建 tuple_data = '北京','上海','杭州'

元组的语法规则

# 元素之间使用 , 间隔
# 头尾使用小括弧
('mike','beijin','大学',28,true,1.78)

元组添加其他类型数据(嵌套)

(['mike',28],['Jason',36],(1,2,3),{'名字':'正正','爱好':'编程'})

特别注意:

1.元组内的每个元素(数据),遵守该数据类型的原有规则。比如字符串类型是要加引号 ‘’

2.可以有多层嵌套,每一层嵌套为一个独立体存在

3.元组的“写保护”只保护一级数据,如[‘mike’,28] 是元组的一个元素,这个元素内的元素 可以按照列表的方式进行增删改查操作。如果元组内还是元组,那么即为元组的规则,无法“写 入”操作

五、元组常用的操作

image.png

查询数据

image.png

删除元组

image.png

元组拼接

image.png

元组和列表转换

image.png

元组通过变量直接取值

image.png

元素数据统计

image.png

自身复制

image.png

元组长度

image.png

包含关系判断

image.png

切片延伸

image.png

六、元组编码小技巧

技巧一

image.png

技巧二

image.png

七、元组遍历

image.png

image.png