python内置类型:列表,包括 list 和 tuple

Posted limalove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python内置类型:列表,包括 list 和 tuple相关的知识,希望对你有一定的参考价值。

列表list

  是一种有序的集合 ,假定list的名字为class

list的元素个数:len( class)

访问元素:

    a. 索引从0开始    b. 也可以使用[-1],[-2],[-3] 从后面访问元素

添加元素

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

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

删除元素

      pop方法 

     pop( ):括号内为空时,默认删除末尾的元素

     pop( i ):这种是通过索引号 i 来删除指定位置的元素

替换元素 

    list表名[索引号]=新元素   

下图是列表List的定义、各种方法的示例:

 

  元组tuple 

   是一种有序列表

   tuple和list 非常相似,但tuple一旦初始化就不能修改

     

       现在,classmates就不能修改了,它没有append( ), insert( ),pop( )这样的添加、删除元素的方法。

访问元素

   和list一样 , classmates[0], classmates[1], classmates[-1]

不可变的tuple有什么意义?

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

 

如果tuple只有一个元素时:

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

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

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

 

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

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

 下图是元组tuple的示例:

 

list 和 tuple 的区别:

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

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

共同点:

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

以上是关于python内置类型:列表,包括 list 和 tuple的主要内容,如果未能解决你的问题,请参考以下文章

Python数据结构之列表类型(list)

列表List

Python 列表(List)

Python 列表(List)

python内置数据类型列表list和字典dict的性能

python中列表(list)函数及使用