Python数据类型 - 元祖

2023-10-17 09:28:39 浏览数 (1)

介绍

元祖和列表都是有序数列,列表是用 [ ],元祖使用()

元祖不同的地方在于创建后不能修改

注意:当元祖中只有一个元素的时候,要加上逗号(一个括号会被当成运算符使用)

比如:

  • (123, ) 表示的是一个元组,元组中包含一个整数 123
  • (123) 表示的是一个带括号的表达式,整数 123 嵌入括号中

元祖的基本操作方法有 统计,查找,嵌套修改,切片,in ,not in

1,统计

代码语言:javascript复制
>>> tuple = ("alex","egon","hello","apple","alex","alex")
>>> tuple.count("alex")#统计元素“alex”的个数
3
>>> len(tuple)#统计元素个数
6
>>>

2,查找

代码语言:javascript复制
>>> tuple = ("alex","egon","hello","apple","alex","alex")
>>> tuple.index("alex")#查找元素在元祖中的位置,多个重复元素只返回第一个的位置0
>>> tuple[1]#根据索引查找元素'egon'

3、切片 [ : : ] 取值

  • 和列表一样,元组也可以切片
  • 使用语法:元组[start : end : step],获取元组中在 [start, end) 范围的子元组
  • 注意范围 [start, end) 包含 start,不包含 end
  • step 是步长,设为 n,则每隔 n 个元素获取一次
代码语言:javascript复制
# 切片
tup = [1, 2, 3, 4, 5, 6, 7, 8]
print(tup[:]) # 取全部元素
print(tup[0:]) # 取全部元素
print(tup[2:5]) # 取第 3 个元素到第 5 个元素
print(tup[::-1]) # 倒序取所有元素
print(tup[-3:-1]) # 取倒数第 3 个元素到倒数第 2 个元素
 
 
# 输出结果
[1, 2, 3, 4, 5, 6, 7, 8]
[1, 2, 3, 4, 5, 6, 7, 8]
[3, 4, 5]
[8, 7, 6, 5, 4, 3, 2, 1]
[6, 7]

4,嵌套修改

代码语言:javascript复制
#元祖的元素是不可以更改的,但元素的元素就有可能是可以更改的
#元祖里边的元素如果包含列表和字典,那列表和字典是可以修改的
>>> tuple = ("alex","egon","hello","apple",["world",{"name":"lesheng"}])
>>> tuple[4].append(0)
>>> tuple
('alex', 'egon', 'hello', 'apple', ['world', {'name': 'lesheng'}, 0])
>>> tuple = ("alex","egon","hello","apple",["world",{"name":"lesheng"}])
>>> tuple[4][1]["name"]="egon"
>>> tuple
('alex', 'egon', 'hello', 'apple', ['world', {'name': 'egon'}])
>>>

0 人点赞