博客
关于我
Python精通-Python元组操作
阅读量:802 次
发布时间:2023-03-28

本文共 1277 字,大约阅读时间需要 4 分钟。

元组(Tuple)简介与操作

元组是Python中的一个常用数据类型,与列表有相似之处,但又有不同之处。本节将详细介绍元组的特性及其操作方法。

1. 元组定义与特性

元组在Python中通过tuple()函数或直接使用括号()定义。与列表不同,元组的元素一旦定义后,不能被修改,也不能添加或删除元素。元组的元素顺序是有序的,且支持索引和切片操作。

2. 元组的定义

定义一个元组:

tu = (111, "test", (111, 222), [(33, 44)], True, 33, 44,)

注意:最后一个逗号的存在使其成为元组。

3. 元组的取值操作

通过索引和切片取值:

tu = (111, "test", (111, 222), [(33, 44)], True, 33, 44,)v = tu[0]  # 取第一个元素v1 = tu[0:1]  # 取前两个元素print(v)    # 输出111print(v1)   # 输出(111, )

4. 元组的不可变性

元组不能修改元素:

tu[0] = 100  # 会报错

如需修改,需先转换为列表:

li = list(tu)li[0] = 100tu = tuple(li)print(tu)  # 输出(100, "test", ...)

5. 元组作为可迭代对象

元组可用于循环和迭代:

tu = (111, "test", (111, 222), [(33, 44)], True, 33, 44,)for item in tu:    print(item)

输出结果:

111"test"(111, 222)[(33, 44)]True3344

6. 转换操作

  • 字符串转元组:
s = "test"v = tuple(s)print(v)  # 输出('t', 'e', 's', 't')
  • 列表转元组:
li = ["test", 123, "nihui"]v = tuple(li)print(v)  # 输出('test', 123, 'nihui')
  • 元组转字符串:
tu = (111, "test", (111, 222), [(33, 44)], True, 33, 44,)s = str(tu)print(s)  # 输出'(111, "test", (111, 222), [(33, 44)], True, 33, 44,)'
  • 元组转列表:
v = list(tu)print(v)  # 输出[111, "test", (111, 222), [(33, 44)], True, 33, 44, ]

7. 元组操作方法

  • count():统计元素出现次数:
tu.count(True)  # 输出1
  • index():查找元素位置:
tu.index(True)  # 输出5

8. 总结

元组适用于只读或只需读取的场景,提高效率并减少错误。需要修改元素时,可先转换为列表操作后再转回元组。元组与列表在可迭代性上相似,但元组提供了更高效的只读性能。

转载地址:http://lvhfk.baihongyu.com/

你可能感兴趣的文章
Objective-C实现互斥锁同步执行两个线程函数(附完整源码)
查看>>
Objective-C实现交易密码算法(附完整源码)
查看>>
Objective-C实现人工势场法(附完整源码)
查看>>
Objective-C实现代理服务器(附完整源码)
查看>>
Objective-C实现以递归的形式MatrixExponentiation矩阵求幂算法 (附完整源码)
查看>>
Objective-C实现伽玛Gamma函数(附完整源码)
查看>>
Objective-C实现位置型pid算法(附完整源码)
查看>>
Objective-C实现低通滤波器(附完整源码)
查看>>
Objective-C实现使用管道重定向进程输入输出(附完整源码)
查看>>
Objective-C实现倒计时(附完整源码)
查看>>
Objective-C实现借记款项功能(附完整源码)
查看>>
Objective-C实现关系矩阵A和B的乘积(附完整源码)
查看>>
Objective-C实现关系矩阵乘法(附完整源码)
查看>>
Objective-C实现关系矩阵乘法(附完整源码)
查看>>
Objective-C实现内存映射文件(附完整源码)
查看>>
Objective-C实现内存泄露检查(附完整源码)
查看>>
Objective-C实现内格尔·施雷肯伯格算法(附完整源码)
查看>>
Objective-C实现几何级数的总和算法 (附完整源码)
查看>>
Objective-C实现分块查找算法(附完整源码)
查看>>
Objective-C实现分块查找算法(附完整源码)
查看>>