元组及其内置方法
Posted sima-3
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了元组及其内置方法相关的知识,希望对你有一定的参考价值。
一:基本使用:tuple
1 用途:记录多个值,当多个值没有改的需求,此时用元组更合适
2 定义方式:在()内用逗号分隔开多个任意类型的值,这些值都为可迭代对象
t=(1,1.3,‘xx‘,(‘a‘,‘b‘),[1,2]) #t=tuple((1,1.3,‘xx‘,(‘a‘,‘b‘),[1,2]))
print(t,type(t))
二:常用操作+内置的方法
优先掌握的操作:
1、按索引取值(正向取+反向取):只能取
t=(‘egon‘,123,[‘a‘,‘b‘])
print((t[0]))
取一个值:print((‘egon’, ))
2、切片(顾头不顾尾,步长)
t=(1,2,3,4,5)
print(t[0:3])
3 长度(item元素个数)
print(len(t))
4、成员运算in和not in
5、循环
for item in (‘a‘,‘b‘,‘c‘):
print(item)
6.需要掌握的操作
t=(‘a‘,‘b‘,‘c‘,‘a‘)
print(t.count(‘a‘))
print(t.index(‘a‘,1,10))
print(t.index(‘xxx‘,1,10)) #不存在,报错
三:该类型总结
1 存多个值
2 有序
3 不可变(内部可以包含可变对象,比如列表中的中的值)
应用场景:将不允许操作的列表可以转化为元组,将允许操作的元组转化为列表
案例一
提前拥有一个老师列表,打算开除,如果是校长亲友团,免开
# 原始列表为list类型
# 手动输入是否是亲友团,决定是否能开除()
teas = [‘Bob‘, ‘Alex‘]
friends = input("亲友团[0, 1]:")
if friends == ‘1‘:
teas = tuple(teas)
# => 异常处理
# 判断teas对象是否是tuple类型
if not isinstance(teas, tuple): # 老师是否是亲友团,不是就开除
teas.clear()
for t in teas:
print("在职老师:%s" % t)
案例二
元组中的数据一定不能改变,但是元组中的数据(可变类型)的数据可以改变
t1 = (1, 2, "abc", True, (1, 2)) # t1永远无法改变
t2 = (1, 2, [])
print(t2, type(t2), id(t2), id(t2[2]))
t2[2].extend((10, 20))
print(t2, type(t2), id(t2), id(t2[2]))
#
(1, 2, []) <class ‘tuple‘> 9312456 42177280
(1, 2, [10, 20]) <class ‘tuple‘> 9312456 42177280
以上是关于元组及其内置方法的主要内容,如果未能解决你的问题,请参考以下文章