longxd

导航

 

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:

>>> li1 = [1,2,3,4,5]
>>> li2 = ['a','b','c']
>>> li3 = [1,2,3,'a','B','!#']
>>>dir(li1)                   #查看列表常用的方法,使用help()查看每个方法的说明。

 


列表常用方法:

append(object)方法:在列表末尾添加新的对象。

>>> li = [1,'a']
>>> li.append('!')
>>> li
[1, 'a', '!']
>>> 

count(value)方法: 用于统计某个元素在列表中出现的次数。

>>> li
[1, 1, 'a', 1, 'a', 'b']
>>> li.count(1)                        #统计数字 1,在列表中出现的次数
3
>>> li.count('a')                      #统计字符 'a'  ,在列表中出现的次数
2
>>> 

extend(iterable)方法:在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

>>> a = [1,2,3]
>>> b = ['a','b','c']
>>> a.extend(b)                            #在列表a的末尾添加另一个列表b,依次展开
>>> a
[1, 2, 3, 'a', 'b', 'c']
>>> a.extend(['!','@'])                   #在列表a的末尾添加另一个列表
>>> a
[1, 2, 3, 'a', 'b', 'c', '!', '@']
>>> a.extend((7,8,9))                    #在列表a中添加一个元组
>>> a
[1, 2, 3, 'a', 'b', 'c', '!', '@', 7, 8, 9]
>>> 

index(value, [start, [stop]])方法:从列表中找出某个对象第一个匹配项的索引位置,如果这个对象不在列表中会报一个异常。 

>>> li
[1, 1, 'a', 1, 'a', 'a', 'b', 1, 2, 9, 9, 9]
>>> li.index('a')            #在列表中搜索元素 "a"的第一个索引
2
>>> li.index('a',3)         #在列表中的第3个元素开始搜索 'a'的的第一个索引
4
>>> li.index('a',0,5)       #在列表0到5的元素中搜索 'a'的第一个索引
2
>>> 

insert(index, object)方法:将指定对象插入到列表中指定的索引位置。

>>> li = [1,2,3,'a','b']
>>> li.insert(2,'c')                      #在列表第二对象后边插入一个 'c'。
>>> li
[1, 2, 'c', 3, 'a', 'b']
>>>

pop([index])方法:移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。

>>> li
[1, 2, 'c', 3, 'a', 'b']
>>> li.pop()                      #默认删除最后一个对象'b',删除的对象可以用变量接,如:a=li.pop()或者a=list(li.pop())
'b'
>>> li
[1, 2, 'c', 3, 'a']
>>> li.pop(2)                    #删除列表中索引为2的对象
'c'
>>> li
[1, 2, 3, 'a']                      #最终列表会被修改
>>> 

remove(value)方法:移除列表中某个值的第一个匹配项。

>>> li = [1,'a',2,'a',3,'!',4]
>>> li.remove('!')      #移除列表中的第一个对象 '!'
>>> li
[1, 'a', 2, 'a', 3, 4]
>>> li.remove('a')     #移除列表中的第一个对象 'a',后边一个对象就没被移除
>>> li
[1, 2, 'a', 3, 4]
>>> 

reverse()方法:用于反转列表中元素。

>>> li = [1, 2,'$$',3, 4,'a','b','d','c']
>>> li.reverse()              #反转列表里面的元素
>>> li
['c', 'd', 'b', 'a', 4, 3, '$$', 2, 1]
>>> li.reverse()             #反转列表里面的元素
>>> li
[1, 2, '$$', 3, 4, 'a', 'b', 'd', 'c']
>>> 

sort(key=None, reverse=False)方法:对列表进行排序。 

>>> li = [11,2,3,24,55,9]
>>> li.sort()                            #默认是正向排序
>>> li
[2, 3, 9, 11, 24, 55]
>>> li = [11,2,3,24,55,9]
>>> li.sort(reverse=True)                #添加参数reverse=True,会倒着排序。
>>> li
[55, 24, 11, 9, 3, 2]
>>> li = ['!', '@@@', 'RT6','******', 'a', 'bb']
>>> li.sort(key=len)                     #根据元素的字符长度进行正向排序。
>>> li
['!', 'a', 'bb', '@@@', 'RT6', '******']
>>> li = ['!', '@@@', 'RT6','******', 'a', 'bb']
>>> li.sort(key=len,reverse=True)        #添加了参数,根据元素的字符长度进行反向排序。
>>> li
['******', '@@@', 'RT6', 'bb', '!', 'a']
>>> 

 


 列表切片: 

利用切片来进行提取信息,进行相关的操作。

>>> li = [1, 'a', 2, 'b',3,'c',4,'d']
>>> li[:]                                   #取出列表中所有的对象。
[1, 'a', 2, 'b', 3, 'c', 4, 'd']
>>> li[1:3]                               #取出索引1到3的对象,左闭右开。
['a', 2]
>>> li[::2]                                #以步长为2取出列表中所有的对象
[1, 2, 3, 4]
>>> li[::-1]                               #以步长为-1取出列表中所有的对象,倒着取对象
['d', 4, 'c', 3, 'b', 2, 'a', 1]
>>> 

交换对象的位置:

>>> li = ['a1',1]
>>> li[0],li[1]=li[1],li[0]                #交换位置
>>> li
[1, 'a1']
>>> 

  

posted on 2018-03-15 16:58  longxd  阅读(166)  评论(2编辑  收藏  举报