Python数据类型 列表List,元组tuple

列表list

  是一种有序的集合,所以可以用数字下标索引。字典是无序的,就不能使用数字下标索引。

元素个数:len( list )

添加元素

    append方法  , 该方法是默认添加元素到末尾     list.append('adam')

    insert方法, 该方法能把元素添加到指定的索引位置   list.insert (1,'lily')

    extend方法:向列表中追加另一个列表

list3.extend([20,200,2000])
list3.extend(['a'])

 删除元素

     pop( i ):括号内为空时,默认删除末尾的元素;括号内有值时,删除指定位置的元素;并返回删除的元素值。

    remove( ):指定删除的元素值;注意不是索引位置。

统计  count(x):统计列表中参数x的出现次数

索引  index( x ):获得参数x在列表中的位置

排序

list.reverse( )

list.sort( ):对列表排序,作用在原列表上。

  元组tuple 

   是一种有序列表,由于tuple一旦初始化就不能修改,所以List的增加删除操作不能应用在元组上。元组只能使用索引和切片。

不可变的tuple有什么意义?

   因为tuple不可变,所以代码更安全,如果可能,能用tuple代替list ,就尽量用tuple。

如果tuple只有一个元素时:

按上图中定义时,定义的不是元组tuple,是1这个数,因为()既可以表示tuple, 也可以表示数学公式中的小括号,这就产生了歧义。

因此,python规定,这种情况下,表示数学意义上的小括号,计算结果是1.

所以只有一个元素时,必须添加一个逗号, 来消除歧义。

 

python 在显示只有一个元素的tuple时,也会加一个逗号, , 以免使用者理解成数学意义上的括号。

tuple中所谓的“不变”是说,tuple的每个元素,指向永远不变,即指向元素'a', 就不能指向元素'b', 指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的。

list 和 tuple 的区别:

  (1)定义上的区别:list使用中括号,tuple使用小括号

  (2)元素上的区别:list是可变的,tuple是不可变的

共同点:

    访问元素时,都是列表名[ ]形式,是中括号,不是小括号。

原文地址:https://www.cnblogs.com/bravesunforever/p/10356374.html