元组类型

元组

  • python的元组属于不可变类型,常应用于读取,而不是去修改;不可变,顾名思义,就是不可改变,元组里的值是不可以改变,但是元组里面的值得值是可以改变。

    • 元组的定义方式是一个小括号

      >>> my_tuple = ('a','b','c')
      >>> my_tuple
      ('a', 'b', 'c')
      # 其实元组的定义方式并不是小括号,而是逗号
      >>> my_tuple = (1)
      >>> type(my_tuple)
      <class 'int'>
      # type函数是查看类型的,可以看到类型是整数
      ​
      >>> my_tuple = 1,
      >>> type(my_tuple)
      <class 'tuple'>
      # 就算不加小括号有逗号,类型也是元组类型,所以说元组的定义方式是逗号
      

        

    • 证明一下元组是不可变的

      >>> my_tuple = ('a','b','c',['A','B'])
      >>> my_tuple[0] = 'aaa'     # 这里可以看到改变元组的值发生了报错
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      TypeError: 'tuple' object does not support item assignment
      # 为什么说元组里面的值的值是可以改变的呢,提前用到了另外一个数据类型"列表,列表是可变的数据类型所以在这里的值是可以改变的
      >>> my_tuple[3][0] = 'AAA'
      >>> my_tuple
      ('a', 'b', 'c', ['AAA', 'B'])
      

        

    • 元组的常用方法

      # 因为元组是不可变的,所以常用的只有切片和统计和查找
      >>> my_tuple = ('a','b','c','a','b')
      >>> my_tuple.count('a')     # 统计出现的次数
      2
      >>> my_tuple.count('c')
      1
      >>> my_tuple.index('c')     # 获取匹配的索引位置
      2
      >>> my_tuple.index('a')
      0
      >>> my_tuple[0:2]           # 进行切片查找
      ('a', 'b')
      >>> my_tuple[1:3]
      ('b', 'c')
      

        

       
posted @ 2018-10-25 21:10  浩小白  Views(115)  Comments(0Edit  收藏  举报