python之list与tuple的区别

list与C语言中的数组及其相似,但又不完全相同,list在python中是最基本的存储数据方式,其基本操作与数组操作方式大致相同,但是有一个特点,可以以倒序的方式排列;

例如:定义一个list数据类型L,可以使用索引的方式来获取list中的每一个元素

>>>L=[a,b,c,d,e,f]
>>>L[0]
a
>>>L[1]
b
>>>L[2]
c

 

而提取list中的数据不仅可以用L[0],L[1]的方式,而另一种方式则是通过倒序的方式获取list的数据。

>>>L=[a,b,c,d,e,f]
>>>L[-1]
f
>>>L[-2]
e
>>>L[-3]
d

需要注意的是索引不能超过list本身大小,如输入L[6]或L[-7]的时候,python会报一个indexError的错误。

list可以用insert方式插入数据

>>>L=[a,b,c,d,e,f]
>>>L.insert(1,k)
>>>L
[a,k,b,c,d,e,f]

而插入数据还有直接在list末尾插入

>>>L=[a,b,c,d,e,f]
>>>L.append(j)
>>>L
[a,b,c,d,e,f,j]

list还可以以pop(i)方式删除数据,i是list的索引位置。

>>>L=[a,b,c,d,e,f]
>>>L.pop(2)
>>>L
[a,b,d,e,f]

 

而tuple元组类型不可以进行删除和插入操作,tuple是一个不可变的有序序列。

>>>t=(1,2,3)
>>>t
(1,2,3)

和list相同,都可以使用s(1)或s(-1)的索引获取数据,但是需要注意的是当定义元组是只有一个元素时,需要在数据后面加一个','符号,

>>>t=(1,)
>>>t
(1,)

因为在定义的时候,在不加后面的','符号时,python会识别为数字,而不是元组。

 

posted @ 2018-03-14 21:58  xuqueen  阅读(388)  评论(0)    收藏  举报