python——元组

python中的元组是什么?我们知道,列表是可以修改的,但是有的时候你需要创建一系列不可修改的元素,元组就是为满足这种需求而产生的。python中将不能修改的值称为不可变的,而不可变的列表称为元组。元组是一种被戴了枷锁的列表。

1.元组的表示

  元组看起来像列表,但是它使用圆括号而不是方括号来标识。如:

  >>> list1 =(1,2,3,4,5,6)
  >>> type(list1)
    <class 'tuple'>

2.元组的遍历

  >>> for i in list1:
  print(i)

    1
    2
    3
    4
    5
    6
  >>> list1[0]
    1
  >>> list1[5]
    6

3.元组的区分

  虽然元组表面上看起来与列表的区别是圆括号与方括号的区别,但是圆括号不是区别元组与其他种类的根本,根本在于有无“逗号”,如下所示:

  >>> list1 = (1)                           #虽然有圆括号 但没有逗号 类型是整型
  >>> type(list1)
    <class 'int'>
  >>> list1 = 2,3,4                       #虽然无圆括号,但是有逗号 类型是元组
  >>> type(list1)
    <class 'tuple'>
  >>> list1 = ()                           #有圆括号,但无逗号,可以认为是个空元组,所以类型是元组                    

  >>> type(list1)

    <class 'tuple'>
  >>> list1 = 1,                          #  无圆括号,但有逗号,认为是元组
  >>> type(list1)
    <class 'tuple'>

4.元组的操作

  (1)元组的重复

  >>> 8 * (1,2)                           #这里的“*”表示重复  *前面的数字表示重复元组里面的元素几次
    (1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2)

  (2)元组的重新定义

  虽然元组不能修改值,但可以对其重新定义来达到修改元组中值的目的  

  >>> list1 = ('小明','小华','小红','小李')
  >>> list1 =list1[:2] + ('小亮') + list1[2:]           #这里实际上是重新定义的整个元组,只不过把原来元组的数据取出来,在添加新元素,构成了一个新元组 
  Traceback (most recent call last):                   #注意,添加新元素时,因为这里是字符串,必须要加单引号,又因为是元组,必须加逗号,这里没加,所以报错
  File "<pyshell#43>", line 1, in <module>
  list1 =list1[:2] + ('小亮') + list1[2:]
  TypeError: can only concatenate tuple (not "str") to tuple
  >>> list1 =list1[:2] + ('小亮',) + list1[2:]                    #加逗号了,没报错
  >>> list1
    ('小明', '小华', '小亮', '小红', '小李')

猜你喜欢

转载自www.cnblogs.com/carlber/p/9381335.html