Python数据类型-元祖

元祖有两个主要作用:

  1. 当做记录用的很强大的数据类型
  2. 充当不可变的列表

元祖的基本特点

  • 大小不可变、元素内存地址不可变(如果是列表可以修改内容) 的对象
  • 有序元素组成的集合,可索引可迭代

元祖的初始化

  • () :使用小括号定义空元祖
  • tuple() :新建空元祖
  • tuple(iterable):使用一个可迭代对象新建元祖
        t = tuple()    # 新建空元祖
        t = tupule(range(10))  # 先新建元祖,再将其赋值给t
        不是改变元祖 t 的内容,而是重新定义了一个新元祖 t(赋值即重新定义)
    
  • (ele1, ele2, ... , elen):给出所有元素值新建元祖
  • (ele1, ele2, ... , elen) * n :使用*的方式初始化元祖,高效
    • 单元素的元祖定义: (1,),数字后的‘,’不能少,防止与运算符产生歧义

元祖元素的访问

  • 支持索引
    • 正索引:从左到右,从0开始
    • 负索引:从右到左,从-1开始
  • 索引越界会抛出IndexError异常
  • 元祖元素的访问:tuple[index]

元祖的查询

  • 指定元素索引查询(不推荐使用)
    • tuple.index(value [,start [,end]]):在列表中查询value第一次出现的位置
      • 可以指定起止索引值,起止索引默认从左到右
      • 匹配不到value值,会抛出ValueError异常
      • 时间复杂度:O(n)
  • 指定元素计数 ( 不推荐使用)
    - tuple.count(value):查询列表中出现value出现的总次数
    - 时间复杂度:O(n)
  • 元素个数查询:
    • len(tuple):计数的方式来查询
    • 时间复杂度:O(1)

元祖使用建议

  • 不要在元祖内部使用可变数据类型
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容