元组的妙用——不可变的有序数据类型

一、元组的组成与表示

1、创建元组可以使用圆括号 (),并在其中用逗号分隔元素。

元组可以包含任意数量的元素,并且每个元素可以是不同的数据类型。例如:

t2 = (None, False, "hello", [1, 2], ())

2、 tuple只有一个元素时需要用逗号隔开,否则不再是元组类型。

t1 = (1,)
t2 = (None, False, "hello", [1, 2], ())

二、元组为不可变的数据类型

1、修改单个数据报错。

t0 = (2, 3)
# t0[0] = 5
# TypeError: 'tuple' object does not support item assignment

2、元组中存放的列表,元组中的列表可以更改

t2 = (None, False, "hello", [1, 2], ())
t2[3].append(6)
print(t2[3])
print(t2)
# [1, 2, 6]
# (None, False, 'hello', [1, 2, 6], ())

三、元组的遍历

1、遍历元组元素 

for e in t2:
    print(e)

2、利用下标元素遍历

for i in range(len(t2)):
    print(t2[i])

四、元组的应用

1、count:统计元组中某元素出现的次数

t3 = (1, 2, 3, 5, 6, 1, 1, 2, 3)
print(t3.count(1))
# 3

2、index:根据元素找索引,找不到报错

print(t3.index(5))
# 3
(1)使用index时的技巧:

设置条件,即存在某元素时才进行查找索引。

value = 9
if value in t3:
    print(t3.index(value))
else:
    print(f"{value}不在元组中")
# 9不在元组中

3、两个元组相加,可以赋给一个新元组 

t1 = ("a", "b", "c")
print(id(t1), type(t1), t1)
t2 = (1, 2, 3)
t1 = t1 + t2
print(id(t1), type(t1), t1)
# 2407770816000  ('a', 'b', 'c')
# 2407770835648  ('a', 'b', 'c', 1, 2, 3)

 五、元组的应用场景

1、不可变性:元组是不可变的,一旦创建就不能修改。这使得元组在存储固定数据的场景下非常有用。

构建不可变的键值对: 在Python中,可以使用元组构建不可变的键值对,然后将这些键值对放入字典中。由于元组是不可变的,可以保证键的唯一性和不变性。

my_dict = {('John', 25): 'Engineer', ('Alice', 30): 'Manager'}

2、解包:将元组中的值解包并赋值给多个变量。

my_tuple = (10, 20, 30)
a, b, c = my_tuple
print(a, b, c)  # 输出:10 20 30

 

你可能感兴趣的:(python,开发语言)