目录
一. 元组的定义
元组:表示多个元素组成的序列,用于存储一串数据信息,数据之间用逗号“,”隔开,并使用小括号定义。
# 定义一个元组
tuple = (1,2,3,1.1,"hello",True)
print(tuple)
"""
运行结果:
(1, 2, 3, 1.1, 'hello', True)
"""
二. 元组与列表的主要区别
区别1:元组是用小括号定义的,列表是用中括号定义的。
区别2:元组中的内容不能够进行修改,列表中的内容可以进行修改。
三.元组的创建
3.1 元组中有多个元素的时候
元组中有多个元素的时候,元组的类型是打印出来是“tuple”。
# 定义一个元组
tuple = (1,2,3,1.1,"hello",True)
print(tuple)
print(type(tuple))
"""
运行结果:
(1, 2, 3, 1.1, 'hello', True)
<class 'tuple'>
"""
3.2 元组中只有一个元素的时候
元组中只有一个元素的时候,打印出来的会是元素对应的类型。
# 定义一个元组
tuple = ("hello")
print(tuple)
print(type(tuple))
tuple_int = (1)
print(tuple_int)
print(type(tuple_int))
"""
运行结果:
hello
<class 'str'>
1
<class 'int'>
"""
可以通过在元素后面加入逗号“,”来解决。
# 定义一个元组
tuple = ("hello",)
print(tuple)
print(type(tuple))
tuple_int = (1,)
print(tuple_int)
print(type(tuple_int))
"""
运行结果:
('hello',)
<class 'tuple'>
(1,)
<class 'tuple'>
"""
四.元组的类型转换
4.1 元组与字符串的相互转换
# 元组的类型转换
# 字符串转为元组
str1 = "hello"
tuple_str = tuple(str1)
print(tuple_str)
print(type(tuple_str))
# 元组转为字符串
tuple1 = (1,2,3)
str_tuple = str(tuple1)
print(str_tuple)
print(type(str_tuple))
"""
运行结果:
('h', 'e', 'l', 'l', 'o')
<class 'tuple'>
(1, 2, 3)
<class 'str'>
"""
4.2元组与列表的相互转化
# 元组的类型转换
# 列表转为元组
list1 = ["hello",1,2,3]
tuple_list = tuple(list1)
print(tuple_list)
print(type(tuple_list))
# 元组转为列表
tuple1 = (1,2,3,"hello")
list_tuple = list(tuple1)
print(list_tuple)
print(type(list_tuple))
"""
运行结果:
('hello', 1, 2, 3)
<class 'tuple'>
[1, 2, 3, 'hello']
<class 'list'>
"""
五.元组的通用方法
5.1 元组的索引
搜索元组中的数据的时候,列表中的索引超过索引的范围的时候会报错
# 元组的索引
tuple1 = (1,2,3,1.1,"hello",True)
print(tuple1[1])
print(tuple1[-2])
"""
运行结果:
2
hello
"""
5.2 元组的切片
5.2.1 元组切片的语法
语法:tuple[start_index:end_index:step]
start_index:开始的索引
end_index:结束的索引
step:两个索引之间的距离
切片操作包头不包尾
5.2.2 元组切片的运用
# 元组的切片
tuple1 = (1,2,3,1.1,"hello",True)
print(tuple1[2:5])
print(tuple1[::2])
# 倒序输出
print(tuple1[::-1])
"""
运行结果:
(3, 1.1, 'hello')
(1, 3, 'hello')
(True, 'hello', 1.1, 3, 2, 1)
"""
5.3元组的长度
# 元组的长度
tuple1 = (1,2,3,1.1,"hello",True)
print(len(tuple1))
"""
运行结果:
6
"""
5.4 元组的最值计算
元组的最值计算值中数据类型必须保持一致,
# 元组的最值计算
tuple1 = (1,2,3,1.1)
print(max(tuple1))
print(min(tuple1))
"""
运行结果:
3
1
"""
5.5 元组的删除
需要用 关键字 del 删除列表
删除列表后,再打印列表会报错
# 元组的最值计算
tuple1 = (1,2,3,1.1,"hello",True)
del tuple1
print(tuple1)
"""
运行结果:
错误
"""
5.6 元组的加法
# 元组的加法计算
tuple1 = (1,2,3,1.1,"hello",True)
tuple2 = ("test","test1")
print(tuple1+tuple2)
"""
运行结果:
(1, 2, 3, 1.1, 'hello', True, 'test', 'test1')
"""
5.7 元组的乘法
# 元组的乘法计算
tuple1 = (1,2,3,1.1,"hello",True)
print(tuple1 * 2)
"""
运行结果:
(1, 2, 3, 1.1, 'hello', True, 1, 2, 3, 1.1, 'hello', True)
"""
5.8 元组中的存在问题
# 元组的存在问题
tuple1 = (1,2,3,1.1,"hello",True)
print(2 in tuple1)
print("Hello" not in tuple1)
"""
运行结果:
True
True
"""
六.元组的方法
6.1 统计相同元素个数
元组中的 True 在统计的时候会被统计为数字 “1”。
元组中的 False 在统计的时候会被统计为数字 “0”。
# 元组的方法
tuple1 = (1,2,3,1.1,"hello",True,1,2,3)
print(tuple1.count(2))
print(tuple1.count(1))
"""
运行结果:
2
3
"""
6.2 找到元素的索引值
# 元组的方法
tuple1 = (1,2,3,1.1,"hello",True,1,2,3,False)
print(tuple1.index(1))
print(tuple1.index(1))
print(tuple1.index(1))
"""
运行结果:
0
0
0
"""
七.元组的遍历
7.1 两种for...in...遍历
# 元组的遍历
tuple1 = (1,2,3,1.1,"hello",True,1,2,3,False)
for i in tuple1:
print(i)
for index,value in enumerate(tuple1):
print(index,value)
"""
运行结果:
1
2
3
1.1
hello
True
1
2
3
False
0 1
1 2
2 3
3 1.1
4 hello
5 True
6 1
7 2
8 3
9 False
"""
7.2 for...in range...遍历
# 元组的遍历
tuple1 = (1,2,3,1.1,"hello",True,1,2,3,False)
for i in range(len(tuple1)):
print(i,tuple1[i])
"""
运行结果:
0 1
1 2
2 3
3 1.1
4 hello
5 True
6 1
7 2
8 3
9 False
"""
好好吃饭
好好睡觉