python入门基础学习之数据容器:tuple(元组)

数据容器:tuple(元组)

元组一旦定义完成就不可以被修改。修改会报错。

元组定义

定义元组使用小括号,用逗号隔开,数据可以是不同类型数据。

定义元组变量

变量名称=(元素,元素,…,元素)

定义空元组

①变量名称=()
②变量名称=tuple()
注:元组只有一个数据时,一定要在数据后面加逗号,否则不成元组。

嵌套元组

元组也支持嵌套:t1=((1,2,3),(4,5,6))
通过下标索引取出内容:t5[1][2] # 应该是6

示例:

# 定义元组
t1 = (1, "hi", True)
t2 = ()
t3 = tuple()
print(f"t1的类型:{
      
      type(t1)},内容是:{
      
      t1}")
print(f"t2的类型:{
      
      type(t2)},内容是:{
      
      t2}")
print(f"t3的类型:{
      
      type(t3)},内容是:{
      
      t3}")

# 定义单个元素的元组
t4 = ("hi",)  # 一个元素的话一定要在后面加一个逗号,不然不是元组
print(f"t4的类型:{
      
      type(t4)},内容是:{
      
      t4}")

# 元组的嵌套
t5 = ((1, 2, 3), (4, 5, 6))
print(f"t5的类型:{
      
      type(t5)},内容是:{
      
      t5}")

# 通过下标索引取出内容
print(t5[1][2])  # 应该是6

运行结果:

t1的类型:<class ‘tuple’>,内容是:(1, ‘hi’, True)
t2的类型:<class ‘tuple’>,内容是:()
t3的类型:<class ‘tuple’>,内容是:()
t4的类型:<class ‘tuple’>,内容是:(‘hi’,)
t5的类型:<class ‘tuple’>,内容是:((1, 2, 3), (4, 5, 6))
6

元组的相关操作

元组由于不可修改的特性,所以其操作方法非常少。

index():查找某个数据,如果数据存在返回对应的下标,否则报错。
count():统计某个数据在当前元组出现的次数。
len(元组)统计元组内的元素个数

示例:

# 元组的操作:index()查找元素下标
t6 = ("e", "二狗", "学python", "e")
index = t6.index("二狗")
print(f"二狗在t6中的下标是:{
      
      index}")

# 元组的操作:count统计方法
num = t6.count("e")
print(f"e在元组的个数:{
      
      num}")

# 元组的操作:len函数统计元组元素的数量
num = len(t6)
print(f"t6元素个数:{
      
      num}")

运行结果:

二狗在t6中的下标是:1
e在元组的个数:2
t6元素个数:4

注意:可以修改元组内的list的内容(修改,增加,删除,反转等),但是不可以替换list为其它list或其它类型。

示例:

# 修改包含list的元组
t7 = (1, 2, ["hi", "ergou"])
print(f"t9的内容:{
      
      t7}")
t7[2][0] = "嗨"
t7[2][1] = "二狗"
print(f"t9的内容:{
      
      t7}")

运行结果:

t7的内容:(1, 2, [‘hi’, ‘ergou’])
t7的内容:(1, 2, [‘嗨’, ‘二狗’])

同列表一样,元组也可以被遍历。
可以使用while循环和for循环遍历它。

示例:

t6 = ("我", "二狗", "学python")
# 元组的遍历:while
index = 0
while index < len(t6):
    print(f"元组的元素有:{
      
      t6[index]}")
    # 至关重要
    index += 1

# 元组的遍历:for
for element in t6:
    print(f"2元组的元素有:{
      
      element}")

运行结果:

元组的元素有:我
元组的元素有:二狗
元组的元素有:学python
2元组的元素有:我
2元组的元素有:二狗
2元组的元素有:学python

元组的特点

1、可以容纳多个元素
2、可以容纳不同类型的元素(混装)
3、数据是有序存储的(有下标序号)
4、允许重复数据存在
5、不可以修改(但是可以修改元组里面列表里的元素)
6、支持for循环

多数特性和list一致,不同点在于不可修改的特性。

猜你喜欢

转载自blog.csdn.net/weixin_44996886/article/details/132678276