数据类型——列表的相关操作
数据类型——列表的相关操作
一、列表的增加操作
1、追加,数据会追加到尾部
>> hljs stylus">['alex', 'jack']
>>> names.append("rain")
>>> names.append("eva")
>>>
>>> names
['alex', 'jack', 'rain', 'eva']
2、插入,可插入任何位置
>> hljs ruby">>>> names
['alex', 'jack', '黑姑娘', 'rain', 'eva']
3、合并,可以把另一外列表的值合并进来
>> hljs ruby">>>> names
['alex', 'jack', '黑姑娘', 'rain', 'eva']
>>> names.extend(n2)
>>> names
['alex', 'jack', '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛', '鸡头']
4、列表嵌套
>> hljs ruby">>>> names
['alex', 'jack', [1, 2, 3], '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛', '鸡头']
>>> names[2][1]
2
二、列表的删除操作
1、del 直接删
>> hljs ruby">['alex', 'jack', [1, 2, 3], '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛', '鸡头']
>>> del names[2]
>>> names
['alex', 'jack', '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛', '鸡头']
2、pop 删
>> hljs ruby">['alex', 'jack', '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛', '鸡头']
>>> names.pop() #默认删除最后一个元素并返回被删除的值
'鸡头'
>>> names
['alex', 'jack', '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛']
>>> help(names.pop)
>>> names.pop(1) #删除指定元素
'jack'
3、clear 清空
>> hljs ruby">['狗蛋', '绿毛', '鸡头']
>>> n2.clear()
>>> n2
[]
三、列表的修改操作
1、修改
>> hljs ruby">['alex', '黑姑娘', 'rain', 'eva', '狗蛋', '绿毛']
>>> names[0] = "金角大王"
>>> names[-1] = "银角大王"
>>> names
['金角大王', '黑姑娘', 'rain', 'eva', '狗蛋', '银角大王']
四、列表的查操作
>> hljs stylus">['金角大王', '黑姑娘', 'rain', 'eva', '狗蛋', '银角大王', 'eva']
>>>
>>> names.index("eva") #返回从左开始匹配到的第一个eva的索引
3
>>> names.count("eva") #返回eva的个数
2
五、列表的切片操作
>> hljs ruby">['金角大王', '黑姑娘', 'rain', 'eva', '狗蛋', '银角大王', 'eva']
>>> names[1:4] #不包含下标4的元素
['黑姑娘', 'rain', 'eva']
倒着切
>>> names[-5:-1]
['rain', 'eva', '狗蛋', '银角大王']
但其实我想要的是后5个,只打印了4个,’eva’这个值没出来,为什么,因为上面提到的顾头不顾尾
可是想把后5个全取出来如何做呢?
>>> names[-5:]
['rain', 'eva', '狗蛋', '银角大王', 'eva']
如果取前几个值 ,一样可以把:号左边的省掉
>>> names
['金角大王', '黑姑娘', 'rain', 'eva', '狗蛋', '银角大王', 'eva']
>>> names[0:3]
['金角大王', '黑姑娘', 'rain']
>>> names[:3] #跟上面一样的效果
['金角大王', '黑姑娘', 'rain']
六、列表的排序操作
>>> a = [83,4,2,4,6,19,33,21]
>>> a.sort()
>>> a
[2, 4, 4, 6, 19, 21, 33, 83]