Python 语言之 - 元组

Python 的元组是一个不可修改的元素的集合,元素间用逗号隔开。元组和列表类似,但是不同点是元组的值一旦设定不能修改,列表的元素设定后仍然可以修改。因为元组不可修改,所以元组的操作要快于列表。因为元组不能修改,所以可以用作字典的键值。元组也可以用来实现函数同时返回多个值。

创建元组

使用小括号定义元组,空的小括号对定义一个空元组。

例子

a_tuple = () #空元组 
print(a_tuple)       

输出

()

创建有值的元组

例子

a_tuple = ('东','西','南','北') 
print(a_tuple)     

输出

(‘东’,’西’,’南’,’北’)

Python 元组可以使用混合的数据类型

例子

a_tuple = (1,2,'星期日','星期一',3.14) 
print(a_tuple)         

输出

(1, 2, ‘星期日’, ‘星期一’, 3.14)

例子

a_tuple =  ('1899-10-34', ['戏剧', '双城记'])
print(a_tuple)     

输出

(‘1899-10-34’, [‘戏剧’, ‘双城记’])

访问元组的值

使用方括号 [] 加索引号,可以访问单独的元素。

例子

a_tuple = (1,2,'星期日','星期一',3.14) 
print(a_tuple[0])   # 打印第一个 
print(a_tuple[1])   # 打印第二个 
print(a_tuple[-1])  # 打印最后一个 
print(a_tuple[-2])  # 打印倒数第二个      

输出

1
2
3.14
星期一

增加元组

例子

a_tuple =  ('1899-10-34', ['戏剧', '双城记']) 
print(a_tuple) 
print(a_tuple[0])   # 打印第一个 
print(a_tuple[1])   # 打印第二个       

输出

(‘1899-10-34’, [‘戏剧’, ‘双城记’])
1899-10-34
[‘ 戏剧 ‘, ‘双城记’]

循环和元组

例子

a_tuple = ('东','西','南','北') 
for dir in a_tuple:
   print (dir)      

输出

东
西
南
北

带索引号的元组输出

例子

a_tuple = ('东','西','南','北') 
for i,dir in enumerate(a_tuple):
   print (i, "   " , dir)      

输出

0 东
1 西
2 南
3 北

元组的连接

添加多个元组在一起,可以使用连接操作符 “+”。

例子

a_tuple = ('东','西','南','北') 
b_tuple = (1,2,3,4,5) 
c_tuple = a_tuple + b_tuple 
print(c_tuple)       

输出

(‘东’,’西’,’南’,’北’, 1, 2, 3, 4, 5)

元组的长度

函数 len 返回元组的长度,也就是元组包含的元素的个数。

例子

a_tuple = ('东','西','南','北') 
i = len(a_tuple) 
print(i)       

输出

4

元组的切割

基于开始和结束两个参数,切割截取元组的元素。

例子

a_tuple = ('东','西','南','北') 
slc = a_tuple[1:3] 
print(slc)         

输出

(‘西’, ‘南’)

索引是从0开始,所以 str[1:3] 表示从第二个元素开始。参数3表示到第四个元素截止,但不包括第四个元素。中间的冒号,表示对列表的元素进行切割。

例子

a_tuple = ('东','西','南','北') 
slc = a_tuple[:2] # 切割出前两个 
print(slc)         

输出

(‘东’, ‘西’)

例子

a_tuple = ('东','西','南','北') 
slc = a_tuple[2:]  # 切割出第三个元素后的,索引是从0开始 
print(slc)          

输出

(‘南’, ‘北’)

元组项的删除

元组是常性的,意思是,元组一旦创建,它包含的元素就不能被更改 。使用 del 语句,可以直接删除整个元组。

例子

a_tuple = ('东','西','南','北') 
del a_tuple 
print(a_tuple)    

输出

Traceback (most recent call last): File “sample.py”, line 8, in < module > print(a_tuple)
NameError: name ‘a_tuple’ is not defined

元组的更新

元组是不可编辑的,一旦被赋值,就不能被改变了。但是如果它的元素是可以被编辑的,例如列表,它内部嵌套的项还是可以被改变的。

例子

a_tuple = (1,2,3,4,[5,6])       
a_tuple[4][1]=12       
print(a_tuple)         

输出

(1, 2, 3, 4, [5, 12])

利用元组返回多个值

函数总是返回一个单独的值,但是利用元组,可以将多个值组合成元组,然后一次性的返回。

例子

def multi():
   a=100
   b=200
   return (a,b) 
x,y = multi() 
print(x) 
print(y)      

输出

100
200

元组的嵌套

例子

a_tuple = (1,2,3,4,5) 
b_tuple = ('a','b','c','d','3') 
c_tuple = (a_tuple,b_tuple) 
print(c_tuple)        

输出

((1, 2, 3, 4, 5), (‘a’, ‘b’, ‘c’, ‘d’, ‘3’))

列表转换到元组

使用 tuple() 方法可以将一个列表转换成元组。

例子

a_list = [1,2,3,4,5] 
a_tuple = tuple(a_list) 
print(a_tuple)   

输出

(1, 2, 3, 4, 5)

重复元组

使用 * 操作符可以将一个元组重复若干次。

例子

a_tuple = ('halo','world') 
a_tuple = a_tuple * 2 
print(a_tuple)         

输出

(‘halo’, ‘world’, ‘halo’, ‘world’)

元组的重复性统计

元组的 count(x) 返回 x 在元组中出现的次数。

例子

a_tuple = ('h','e','l','l','o') 
cnt=a_tuple.count('l') 
print(cnt)       

输出

2

zip() 方法

利用 zip() 方法,可以同时循环遍历多个序列。

例子

a_tuple = (1,2,3,4,5) 
b_tuple = ('a','b','c','d','e') 
for num, alp in zip(a_tuple,b_tuple):   
print(num, alp)     

输出

1 a
2 b
3 c
4 d
5 e

元组的 min(), max()

min() 返回元组的最小值,max() 返回元组的最大值。

例子

a_tuple = (1,2,3,4,5) 
print(min(a_tuple)) 
print(max(a_tuple))    

输出

1
5

更多内容待续...... 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Suprman

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值