Python3数据类型-元组-03
3.1 什么是元组(tuple)?
上一小节我学习了列表(list)的基本知识,接下来我将继续学习python序列里面的另外一种数据类型:元组(tuple)。
元组和列表类似,不同之处是元组用()
将元素扩起来,而列表是用[]
;其次,列表中的元素可以修改变更,而元组是不可变的一种数据类型,里面的元素不可更改(不能直接排序、删除、赋值等)。
3.2 创建一个元组
和列表类似,创建一个元组,只需要用()
将元素扩起来,元素之间用逗号间隔即可。
tup1 = (1, 2, 3, 4, 5, 6)
tup2 = ('hello', 'good', 'fine', 'thanks')
tup3 = ("desk", "chair", "book", "cup")
tup4 = () #创建了一个空元组
tup5= (50,) #只有一个元素的元组需要在后面加逗号,否则系统会将其识别成别的数据类型。
3.3 元组的访问
和列表相同,元组也是通过下标索引来访问其中的元素。
元组的切片和截取也和列表及字符串的相同,元组名[头下标:尾下标:步长]
。
print(tup1[0], tup1[3], tup1[5])
print(tup2[2], tup2[3])
print(tup1[0:4])
print(tup1[:-1])
print(tup3[-4:-2])
输出结果为:
1 4 6
fine thanks
(1, 2, 3, 4)
(1, 2, 3, 4, 5)
('desk', 'chair')
3.4 元组的修改
元组中的元素是不能修改的,但是我们可以将两个元组连起来变成一个新的元组。还可以对元组执行*
操作。
tup6 = tup2 + tup3
tup7 = tup1 + tup3 + tup5
print("合并后的元组tup6为:", tup6)
print('合并后的元组tup7为:', tup7)
输出结果为:
合并后的元组tup6为: ('hello', 'good', 'fine', 'thanks', 'desk', 'chair', 'book', 'cup')
合并后的元组tup7为: (1, 2, 3, 4, 5, 6, 'desk', 'chair', 'book', 'cup', 50)
3.5 元组的删除
因为元组是不可修改的序列,因此不能通过del
命令来删除元组中的元素。
只能通过使用del
命令来删除整个元组。删除后的元组将不能执行print
,会提示元组没有定义。
del tup1
del tup5
3.6 元组函数
len(tuple) ————计算元组中元素的个数
max(tuple) ————返回元组中的最大值
min(tuple) ————返回元组中的最小值
tuple(seq) ————将列表转换为元组
# 下面验证一下元组的几个函数
print('下面是演示元组几种内置函数的用法:')
print('tup1最大值为:', max(tup1))
print('tup1最小值为:', min(tup1))
print('tup3的长度为:', len(tup3))
print('tup2转换成列表为:', list(tup2))
输出结果为:
下面是演示元组几种内置函数的用法:
tup1最大值为: 6
tup1最小值为: 1
tup3的长度为: 4
tup2转换成列表为: ['hello', 'good', 'fine', 'thanks']
3.7 小结
这一节中,学习了元组(tuple)的基本知识,它和列表(list)一样是一种python序列,不同的是,元组中的元素不能修改,元组是一种不可更改的数据类型。
除此之外,元组中元素的访问、切片、截取、合并、求最大值、最小值、长度等都和列表的用法一样。
如果需要更改元组中的元素,可以先讲元组转变成列表,然后改变列表中的元素,然后再将修改过的列表更改成元组。
# 改变tup2中的元素
list1 = list(tup2)
list1.append('well')
print(list1)
list1.insert(3, 'very')
print(list1)
tup8 = tuple(list1)
print(tup8)
输出结果为:
tup2转换成列表为: ['hello', 'good', 'fine', 'thanks']
['hello', 'good', 'fine', 'thanks', 'well']
['hello', 'good', 'fine', 'very', 'thanks', 'well']
('hello', 'good', 'fine', 'very', 'thanks', 'well')
下一节,我将学习另外一种数据类型,字典(dict)。
网友评论