自学内容网 自学内容网

python学习记录9

(1)元组

元组也是序列当中的一种,但是与列表不同的是,元组属于不可变的序列类型。应此就没有列表的增加、修改、删除功能。

创建元组的方法与列表一致,可以用两种方式创建,第一个是直接用()创建元组,第二个是用内置函数tuple,格式为创建元组名=tuple()

#元组的创建
y1 = (1,3,6,8,9)
print(y1)
y2 = tuple('hello')
y3 = tuple('hello')
print(y2)

元组有序列都有的切片、相加、数乘、查找、查询功能。查找即查找元素是否在元组中,查找元组中值最大(小)的元素。查询是查询元组中第一个出现这个元素的位置,查找这个元组中这个元素出现的次数。也可以计算序列长度,使用del删除元组。

#元组的操作
tup1_ = (1,6,8,9,2,7,11)
tup2_ = (6,8,4,5,7,9,10)
tup_ = tup1_+tup2_#相加
print(tup_)
tup_*=2#相乘
print(tup_)
s = 1 in tup_#查找元素
print(s)
M = max(tup_)#查找最大值
print(M)
m = min(tup_)#查找最小值
print(m)
print(tup_[0:10:3])#元组切片
x = tup_.index(2)#查找元素的第一个位置
print(x)
c = tup_.count(1)#统计元素个数
print(c)
l = len(tup_)#计算元组长度
print(l)
del tup_#删除元组
tup_ = (10)
print(tup_,type(tup_))
tup_ = (10,)
print(tup_,type(tup_))

注意,当列表里只有一个元组时,若语法格式是例如x =(1),那么x是一个int类型的变量,相当于x = 1,但创建一个x = (1,),此时x是元组变量。

元组也有遍历操作,同样也是使用for循环,for+索引以及enmulate函数 

#元组遍历
Tup = ('hello','thank','you')
for i in Tup:
    print(i)
for i in range(0,len(Tup)):
    print(i,Tup[i])
for i,j in enumerate(Tup,start=1):
    print(i,j)

元组是有生成式的,但是元组的生成式生成出来的是一个生成器对象,如果要将这个元组输出出来需要将这个生成器对象转变为元组,或者使用__next__操作,__next__操作属于元组的一个遍历操作,每次会提取元组中的一个元素出来。因此如果某个元组在使用__next__前已经遍历过了,那么这时使用__next__就会报错。

T = (i for i in range(1,10))
print(T)
T = tuple(T)
print(T)
for i in T:
    print(i)
T_ = (i for i in range(1,10))
print(T_.__next__())
print(T_.__next__())
print(T_.__next__())
print(T_.__next__())
print(T_.__next__())


原文地址:https://blog.csdn.net/lewisCK/article/details/142797346

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!