元组

1444-高同学

发表文章数:12

首页 » Python » 正文

特点

  1. 元组是不可变序列
  2. 没有增加删除修改的操作
  3. 可以切片,连接,比较运算,计数,最大值最小值求和等

操作

元组创建

  • 通过(),或者省略()

如果只有一个元素,后面必须加逗号 。如:(1,)

  • 通过tuple()创建

**tuple(可迭代对象)**格式转化成元组(类似于list())

a=(1,)
print(type(a))
tuple()
print(tuple("abc"))  #拆分成单一的字符作为元组元素
b=tuple([2,3,4])
print(b)
print(tuple(range(3)))
del b      #可以将元组作为整体删除
print(b)  #报错,因为被删除

<class 'tuple'>
('a', 'b', 'c')
(2, 3, 4)
(0, 1, 2)
Traceback (most recent call last):

  File "<ipython-input-63-a774f09cc8f0>", line 9, in <module>
    print(b)  #报错,因为被删除

NameError: name 'b' is not defined

元组的删除

del a

元素的访问和计数

元素不能修改
可以用索引,切片,返回值仍是元组对象
可以用内置函数sorted进行排序,生成新的对象是列表对象

zip

zip生成元组作为元素的zip类型

a=[1,2,34]
b=[6,7,8]
c=[9,10,11]
d=zip(a,b,c)
print(d)
print(list(d))
print(type(d))   #结果是zip类型

<zip object at 0x0000020417C41FC8>
[(1, 6, 9), (2, 7, 10), (34, 8, 11)]
<class 'zip'>

生成器推导式创建元组

先得到一个生成器对象(只能用一次),再转化为列表或元组