1.10 tuple 元组

时间:2022-07-05 14:49:02
元组(tuple)属于不可变序列
tuple特性:
  特性一:可包含任意对象的有序集合
  特性二:通过下标索引访问元素
  特性三:固定长度,异质,可任意嵌套
  特性四:不支持原位改变
  特性五:存储机制:对象引用数组
 
先说说说如何生成一个元组类型的对象
 >>> #元组的构建方法
 >>> # 1 用()直接声明元组
 >>> l = ()
 >>> type(l)
 <class 'tuple'>             #这样就声明了一个空元组
 >>>
 >>> # 2 我想声明一个只有一个元素的元组
 >>> ll = (1)
 >>> type(ll)
 <class 'int'>
 >>> #    what??? ll怎么会是int型呢?这里需要注意一点如果元组中只有一个元素,要在元素后边加一个逗号
 >>> ll = (1,)
 >>> type(ll)
 <class 'tuple'>

 >>>
 >>> # 3 我想声明一个含有多个元素的元组
 >>> t = (1,2,4)
 >>> type(t)
 <class 'tuple'>
 >>> tt = tuple(range(5)
 )
 >>> type(tt)
 <class 'tuple'>
 >>>

  >>> t2=1,1,2,3,   #刚才漏了这种情况,可见生成元组对象,最终要的不是()而是","
  >>> type(t2)
  <class 'tuple'>
  >>>

由于元素属于序列,所以支持序列的通用操作,可结合前文中序列的通用操作进行练习。

tuple有一个应用场景,交换两个变量的值,是我知道的最方便的写法,不需要不需要第三个变量。

 >>> a,b = 2,3
 >>> a,b = b,a
 >>> a
 3
 >>> b
 2
 >>> 

就元素的访问速度而言,tuple比list快,所以有一组数据最初设定后就不准备改变的话,放在tuple中吧。