Python 元组常用方法详解

元组 tuple,为python中的典型容器,具有的特性为在定义后不支持增删改

元组的定义方式

元组的定义如下所示

tuple1 = (1, 2, 3)
print(tuple1)
# (1, 2, 3)

元组的定义一般是一对小括号括起来若干元素

但也支持省略括号定义

tuple1 = 1, 2, 3
print(tuple1)
print(type(tuple1))
# (1, 2, 3)
# <class 'tuple'>
空元组的定义方式

空元组一般有以下两种定义方式

tuple1 = ()
print(type(tuple1))
# <class 'tuple'>
tuple1 = tuple()
print(type(tuple1))
# <class 'tuple'>
单元素元组定义

单元素元组的定义比较特别,在元素后要添加","

tuple1 = 3
print(type(tuple1))
tuple2 = (3,)
print(type(tuple2))
# <class 'int'>
# <class 'tuple'>

由上可见,在未添加","进行单元素元组定义的时候,被识别为了整形,这是因为括号被识别为了作为用作提高表达式的作用,类似于(1+2)*3,这里的括号作用是为了提高加法运算优先级,所以注意在单元素元组定义的时候要添加逗号

元组count()
tuple1 = (1, 2, 3, 3)
print(tuple1.count(3))
# 2

count()函数内部的参数为要查找的元素,返回值为元组内部查找元素出现的次数,这里的count()方法和列表一样,都不可指定查找的下标范围,仅在字符串中的count()方法可以指定下标范围,关于字符串的count()方法可以参考我的另一篇博客Python字符串count()方法-CSDN博客

元组index()

index()函数内部参数也为要查找的元素,返回值为元组内部查找元素的下标,若元组内存在多个匹配元素,则返回第一个匹配到的元素下标

tuple1 = (1, 2, 3, 3)
print(tuple1.index(3))
# 2

若要指定查找的下标范围,可以设置第二个和第三个下标,分别为下标的起始位置。

tuple1 = (1, 2, 3, 4, 5, 3, 3, 3)
print(tuple1.index(3, 4, 6))
# 5

由上述代码可以看到在设置了起始下标分别为4和6后,匹配到了元组中的第2个3,下标为5,元组中的index()方法和列表以及字符串中的index()方法类似,index()函数在查找失败后会报错,但是字符串中的find()方法则会在查找失败后返回-1(这个方法只在字符串中可用)详情可以参考我的另外一篇博客Python字符串查找函数find()、index()讲解-CSDN博客

len()

len()函数作用为返回元组的长度

tuple1 = (1, 2, 3, 4, 5, 3, 3, 3)
print(len(tuple1))
# 8

补充:虽然元组为不可增删改,但实际上是可以进行更改的,只是不具备像列表一样能用类似于append(),pop()等函数,具体实现方法,以下为一个例子:

使用list()进行强制类型转换为列表,修改后再使用tuple()变回元组

tuple1 = (1, 2, 3, 4, 5)
tuple1 = list(tuple1)
tuple1.pop()
tuple1 = tuple(tuple1)
print(tuple1)
# (1, 2, 3, 4)

上面的代码通过先转为列表,使用pop()将最后一个元素进行删除,再转回元组

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值