元组(tuple)的常用操作

元组(tuple)的常用操作

元组的定义

元组的定义由()定义,相邻元素之间采用,进行分割,在形式上,可以称为不可变的列表

元组是不可变类型,无法对其中的元素进行单独的修改和增加

元组的创建

# 空元祖的创建
tu = ()

# 一个元素的元组的创建的时候,需要在元素末尾加个,
tu1 = ('hello world !',)

# 多种数据类型元组的创建
tu2 = ('123', '元组', [1, 2, 3], {'name': 'zhou', 'age': 18})

# 不加小括号创建元组
tu3 = 'hello', 'world', '!'

元组的删除(del)

# 删除元组tu1
tu1 = ('123', '元组', [1, 2, 3], {'name': 'zhou', 'age': 18})
del tu1

查找元组(count,index)

查找(count)

tu = (11, 22, 33, 44, 55, 44, 33, 22, 11)
# count查找的为某个元素在元组中出现的次数
print(tu.count(22))


# 输出结果
2

查找(index)

tu = (11, 22, 33, 44, 55, 44, 33, 22, 11)
# index查找的为元素的索引值,第一个参数代表需要查找的元素,第二个参数可以指定从哪个索引值开始查找
print(tu.index(44))
print(tu.index(44, 4))


# 输出结果
3
5

通过索引取值

tu = (11, 22, 33, 44, 55, 44, 33, 22, 11)
# 通过索引取出索引为3的值
print(tu[3])

# 通过切片的方式获取指定的元素,第一个参数为开始索引,第二个参数为结束索引,第三个参数为步长
print(tu[2:8:2])

# 输出结果
44

修改元组元素

虽然我们开始就说到元组无法进行单独的修改,但是我们可以对原组进行重新赋值,拼接等操作达到修改元组

tu = (11, 22, 33, 44, 55, 44, 33, 22, 11)
# 给元组重新赋值
tu = (77, 88, 99)
print(tu)

# 使用元组进行拼接得到新元祖,注意,拼接的类型一定要为元组格式
tu1 = (33, 44, 55)
tu2 = (66, 77, 88)
tu1 = tu1 + tu2
print(tu1)


# 输出结果
(77, 88, 99)
(33, 44, 55, 66, 77, 88)

元组的拆包

在元组有多个元素的时候,我们可以进行元组拆包来分别得到元组的元素

tu = (77, 88, 99)
# 有几个元素就用几个变量接收
a, b, c = tu
print(a)
print(b)
print(c)


# 输出结果
77
88
99

元组推导式

元组推导式和我们的列表推导式是一样的,只需要修将列表的[]改为()就可以了,此处我们不做过多的演示,详细内容请看列表(list)的常用操作

列表和元祖的区别

元组和列表都属于序列,而且它们又都可以按照特定顺序存放一组元素,类型又不受限制,只要是Python支持的类型都可以

主要区别体现在:

  • 列表属于可变序列,它的元素可以随时修改或者删除,元组属于不可变序列,其中的元素不可以修改,除非整体替换
  • 列表可以使用append()、extend()、insert()、remove()、pop()等方法实现添加和修改列表元素,而元组没有这几个方法,所以不能向元组中添加和修改元素。同样,元组也不能删除元素
  • 列表可以使用切片访问和修改列表中的元素,元组也支持切片,但是它只支持通过切片访问元组中的元素,不支持修改
  • 元组比列表的访问和处理速度快,所以当只是需要对其中的元素进行访问,而不进行修改的时候,建议使用元组
  • 列表不能作为字典的键,而元组可以
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值