Python元组知识点总结

本文主要介绍了Python元组的基础知识,包括创建元组、索引与切片、查找元素下标、统计元素次数、元组与列表交互以及元组的遍历和拆包等操作。元组是不可变数据类型,其特性与列表有所不同,如需添加或修改元素需借助其他数据结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

元组(tuple)

元组是Python的基本数据类型之一,与列表类似,不同之处在于元组的元素不能增加、删除、修改。



提示:以下是本篇文章正文内容,以下示例仅供参考。

一、创建元组

1.使用一对圆括号来表示空元组: ()
2.使用一个后缀的逗号来表示单元组: a,(a,)
3.使用以逗号分隔的多个项: a, b, c or (a, b, c)
4.使用内置的 tuple(): tuple()tuple(iterable),转为元组
  • 一般创建元组的方法
tuple1 = () # ()
tuple11 = tuple() # ()
tuple2 = 'a', # ('a',)
tuple21 = ('a',) # ('a',)
tuple3 = 'a','b','c' # ('a','b','c')
tuple31 = ('a','b','c') # ('a','b','c')
tuple4 = 12345,54321,'hello!' # (12345,54321,'hello!')

扩展1:漏掉逗号,数据类型不为元组

# 漏掉逗号
t1 = (1)
print(type(t1)) # <class 'int'>
t2 = ('a')
print(type(t2)) # <class 'str'>
# 加上逗号
t3 = (1,)
print(type(t3)) # <class 'tuple'>
t4 = ('a',)
print(type(t4)) # <class 'tuple'>

字典与集合的逗号情况

print(type({})) # <class 'dict'>
print(type({1})) # <class 'set'>
print(type({1,})) # <class 'set'>

扩展2:列表不加逗号,依然是列表

l1 = [1,]
print(type(l1)) # <class 'list'>
l2 = [1]
print(type(l2)) # <class 'list'>

综合 扩展1和扩展2 所述,凡是容器类型,无论内部有几个元素,尤其内部只有一个元素时,必须加上逗号,完美避开数据类型错误的情况出现。

  • 元组嵌套列表、元组嵌套元组
# 元组嵌套列表
v = ([1,2,3],[3,2,1])

# 以下两行代码为,元组嵌套元组
a = 12345,54321,'hello!'
b = a,(1,2,3,4) # ((12345, 54321, 'hello!'), (1, 2, 3, 4))
  • 转换为元组
a = tuple('abc')
b = tuple([1,2,3])

二、索引与切片(取值)

元组索引与切片跟字符串和列表相同,这里不多介绍。

1.截取单个元素:tuple[index]

t = (11,22,33)
print(t[1]) # 22

2.切片(截取一组数据):tuple[::]

n = (1,2,3,4,5)
print(n[0]) # 1
print(n[1:2]) # (2,)
print(n[::2]) # (1, 3, 5)
print(n[::-1]) # (5, 4, 3, 2, 1)

三、查找指定元素的下标:tuple.index(ele)

tuple.index(x):x为要查找的索引下标

tup = ('a','b','c','d','e','f')
print(tup.index('d')) # 3

四、统计长度:len()

t = (1,2,3,4,5,6)
print(len(t)) # 6

五、统计指定元素在元组中出现的次数:count()

print((1,4,3,4,7).count(4)) # 2

六、向元组中的列表,添加新值:append()

"""
元组内部元素不能修改,内存地址不变,如果元素的元素是可变类型,那么元组中的元素值可以修改。
一般情况下,元组的值元素值不能被修改,但元组里面的列表是可以修改,即,元组嵌套列表,可以修改元组中嵌套列表。
"""
# 元组的第一层不能增删改,但可查,元组的第二层没有要求(要看数据,如果第二层是不可变类型依然不能增删改)
t = (11, 22, 33, [44, 55],)
t[3].append(66)
print(t)  # (11, 22, 33, [44, 55, 66])

七、for循环:遍历取值

t = 'a','b','c','d','e'
# 方法一:
for item in t:
    print(item)
# 方法二:
for i in range(len(t)):
    print(t[i])

八、拆包:将容器的元素提取来,并赋值给变量

# 这个用专业名词就是叫做元组的拆包
a,b = 1,2
print(a,b) # 1 2

a,b = ('hello','world')
print(a,b) # hello world

a,b = ['hello','world']
print(a,b) # hello world

a,b = {'name':'张三','age':19}
print(a,b) # name age
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值