之前阿博分享了List数据类型,今天来和小伙伴们分享Tuple(元组)数据类型。
注意:阿博的开发环境是Python3。
Tuple简介
与List类似,不同之处在于元组的元素不能修改,元组使用小括号,列表使用方括号,元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
简单创建Tuple
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
tup1 = (1, 2, 3, 4, 5, 6)
print(type(tup1))
通过type()函数,我们可以输出结果:
创建一个空Tuple
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
tup2 = ()
创建单个元素Tuple注意事项
在日常开发当中,创建单个元素的Tuple需要在元素后面添加逗号,否则括号会被当作运算符使用。下面是代码示例:
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
tup1 = (100)
print(type(tup1))
tup2 = (100,)
print(type(tup2))
运行代码可以看到以下结果:
访问Tuple的元素
Tuple可以使用下标索引来访问元组中的值,如下实例:
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
tup1 = (1, 2, 3, 4, 5, 6, 'python', 'java', 'android')
# 输出tup1的第一位元素
print('tup1[0]:', tup1[0])
# 输出tup1的2-7元素
print('tup1[1:7]:', tup1[1:7])
运行代码输出结果如下:
tup1[0]: 1
tup1[1:7]: (2, 3, 4, 5, 6, 'python')
修改Tuple的元素
Tuple中的元素值是不允许修改的,但我们可以对Tuple进行连接组合,代码示例如下:
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
tup1 = (1,2)
tup2 = ('a','b')
错误的修改示例:
tup1[0] = 100
编译执行上面的代码会报错的:
TypeError: 'tuple' object does not support item assignment
错误的大意是:tuple类型不支持修改。我们可以实现tuple类型拼接:
tup3 = tup1 + tup2
print(tup3)
输出结果如下是:
(1, 2, 'a', 'b')
删除Tuple
由于Tuple是不可变类型,我们只能通过del语句来删除整个Tuple,代码示例如下:
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
tup1 = ('a', 'b', 23)
print(tup1)
del tup1
print("删除后的元组 tup1 : ")
print(tup1)
因为是删除之后还去打印tup1,所以会产生一下报错:
Traceback (most recent call last):
File "TupleDemo.py", line 9, in
print(tup1)
NameError: name 'tup1' is not defined
Tuple的内置函数
1.获取Tuple元素个数。
len(tuple)
2.返回元组中元素最大值。
max(tuple)
3.返回元组中元素最小值。
min(tuple)
4.将可迭代系列转换为元组。
tuple(iterable)