python - 元组常用操作

元组(Tuple)是 Python 中的一种不可变序列类型,一旦创建后其元素不能修改。以下是元组的常用操作及示例:


1. 创建元组

  • 直接定义:用逗号分隔元素,括号可选(但建议加括号)。

    ini 复制代码
    python
    t1 = (1, 2, 3)          # 普通元组
    t2 = 1, 2, 3            # 省略括号的元组(不推荐,易混淆)
    t3 = ()                 # 空元组
    t4 = (5,)               # 单元素元组(必须加逗号)
  • 类型转换 :通过 tuple() 将其他可迭代对象转为元组。

    ini 复制代码
    python
    list_data = [4, 5, 6]
    t5 = tuple(list_data)    # 结果: (4, 5, 6)

2. 访问元素

  • 索引访问:从 0 开始,支持负索引(从 -1 开始)。

    python 复制代码
    t = ('a', 'b', 'c')
    print(t[0])    # 输出: 'a'
    print(t[-1])   # 输出: 'c'
  • 切片操作:返回子元组。

    python 复制代码
    t = (1, 2, 3, 4, 5)
    print(t[1:3])  # 输出: (2, 3)
    print(t[::2])  # 输出: (1, 3, 5)

3. 元组拼接与重复

  • 拼接 :用 + 连接两个元组。

    python 复制代码
    t1 = (1, 2)
    t2 = ('a', 'b')
    t3 = t1 + t2  # 结果: (1, 2, 'a', 'b')
  • 重复 :用 * 重复元素。

    python 复制代码
    t = (1, 2) * 3  # 结果: (1, 2, 1, 2, 1, 2)

4. 判断元素是否存在

  • 使用 innot in

    python 复制代码
    t = ('x', 'y', 'z')
    print('y' in t)    # 输出: True
    print('a' not in t) # 输出: True

5. 元组长度与统计

  • 长度len() 获取元素数量。

    python 复制代码
    t = (1, 2, 3, 3)
    print(len(t))  # 输出: 4
  • 统计次数count() 统计某元素出现次数。

    python 复制代码
    print(t.count(3))  # 输出: 2
  • 查找索引index() 返回元素首次出现的索引(不存在时报错)。

    python 复制代码
    print(t.index(2))  # 输出: 1

6. 遍历元组

  • 直接遍历或通过索引遍历。

    python 复制代码
    t = ('a', 'b', 'c')
    for item in t:
        print(item)  # 输出: a, b, c
     
    for i in range(len(t)):
        print(t[i])  # 同上

7. 元组解包(Unpacking)

  • 将元组元素赋值给多个变量。

    python 复制代码
    t = (10, 20, 30)
    x, y, z = t
    print(x, y, z)  # 输出: 10 20 30
  • 带星号的解包:捕获剩余元素。

    python 复制代码
    first, *rest = (1, 2, 3, 4)
    print(first, rest)  # 输出: 1 [2, 3, 4]

8. 元组与列表的转换

  • 元组 → 列表list()

    python 复制代码
    t = (1, 2, 3)
    lst = list(t)  # 结果: [1, 2, 3]
  • 列表 → 元组tuple()(见创建元组部分)。


9. 元组的不可变性

  • 元组创建后不能修改、删除或添加元素,否则会报错:

    python 复制代码
    t = (1, 2, 3)
    t[0] = 10  # 报错: TypeError: 'tuple' object does not support item assignment

10. 其他操作

  • 比较:元组支持比较操作(按字典序)。

    python 复制代码
    t1 = (1, 2, 3)
    t2 = (1, 2, 4)
    print(t1 < t2)  # 输出: True
  • 内置函数 :如 max(), min(), sum() 等。

    python 复制代码
    t = (10, 20, 5)
    print(max(t))  # 输出: 20

为什么使用元组?

  1. 不可变性:适合存储不应被修改的数据(如配置、常量)。
  2. 性能优化:比列表更轻量,遍历速度更快。
  3. 安全性:作为字典的键(列表不可哈希,元组可哈希)。
  4. 函数返回多个值:Python 函数通过返回元组实现多返回值。
相关推荐
麻辣清汤2 小时前
结合BI多维度异常分析(日期-> 商家/渠道->日期(商家/渠道))
数据库·python·sql·finebi
钢铁男儿2 小时前
Python 正则表达式(正则表达式和Python 语言)
python·mysql·正则表达式
钢铁男儿2 小时前
Python 正则表达式实战:解析系统登录与进程信息
开发语言·python·正则表达式
前端小趴菜052 小时前
python - range
python
☺����2 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码1
人工智能·python·音视频
前端小趴菜053 小时前
python - 列表方法
python
前端小趴菜053 小时前
组合数据类型
python
Kan先生3 小时前
对象存储解决方案:MinIO 的架构与代码实战
数据库·python
秋难降3 小时前
别再用暴力排序了!大小顶堆让「取极值」效率飙升至 O (log n)
python·算法·排序算法