Python之列表方法

1、Append

append方法用于在列表末尾追加新的对象。

>>> lst = [1,2,3]
>>> lst.append(4)
>>> lst
[1, 2, 3, 4]

2、Count

count方法统计某个元素在列表中出现的次数。

>>> ['2','1','3','2','4'].count('2')
2
>>> x = [[1,2],1,1,[2,1,[1,2]]]
>>> x.count(1)
2
>>> x.count([1,2])
1

3、Extend

extend方法可以在列表的末尾一次性追加另一个序列中的多个值。换句话说,可以用新列表扩展原有的列表。

>>> a = ['a','b','c']
>>> b = ['1','2','3']
>>> a.extend(b)
>>> a
['a', 'b', 'c', '1', '2', '3']

这个操作看起来很像连接操作,两者最主要区别在于:extend方法修改了被扩展的序列(在这个例子中,就是a)而原始的连接操作则不然,它会返回一个全新的列表:

>>> a = [1,2,3]
>>> b=[4,5,6]
>>> a+b
[1, 2, 3, 4, 5, 6]
>>> a
[1, 2, 3]
>>> b
[4, 5, 6]

可以看到被连接的列表与之前例子中被扩展的列表是一样的,但是这一次它并没有被修改。这个是因为原始的连接操作创建了一个包含了a和b副本的新列表。如果需要,如下例所示的操作,那么连接操作的效率会比extend方法低。

>>> a=a+b
>>> a
[1, 2, 3, 4, 5, 6]

同样,这里也不是一个原位置操作,它并不会修改原来的列表。

我们可以使用分片赋值来实现相同的结果:

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> a[len(a):]=b
>>> a
[1, 2, 3, 4, 5, 6]

虽然这么做是可行的,但是代码的可读性就不如使用extend方法了。

4、Index

Index方法用于从列表中找出某个值第一个匹配项的索引位置:

>>> a = [1, 2, 3, 4, 5, 6]
>>> a.index(3)
2
>>> a[2]
3

5、Insert

insert方法用于将对象插入到列表中:

>>> a = [1, 2, 3, 4, 5, 6]
>>> a.insert(3,'to')
>>> a
[1, 2, 3, 'to', 4, 5, 6]

insert方法的操作也可以用分片赋值来实现

>>> a = [1, 2, 3, 4, 5, 6]
>>> a[4:4]=['to']
>>> a
[1, 2, 3, 4, 'to', 5, 6]

6、Pop

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

>>> a = [1, 2, 3, 4, 5, 6]
>>> a.pop()
6
>>> a
[1, 2, 3, 4, 5]
>>> a.pop(2)
3
>>> a
[1, 2, 4, 5]

注:pop方法是唯一一个既能修改列表又返回元素值(除了None)的列表方法。

7、Remove

remove方法用于移除列表中某个值的第一个匹配项:

>>> a = [1, 2, 3, 4, 5, 6]
>>> a.remove(5)
>>> a
[1, 2, 3, 4, 6]

8、Reverse

reverse方法将列表中的元素反向存放。

>>> a = [1, 2, 3, 4, 5, 6]
>>> a.reverse()
>>> a
[6, 5, 4, 3, 2, 1]

注:该方法改变了列表但不返回值

9、Sort

sort方法用于在原位置,对列表进行排序。在“原位置排序”意味着改变原来的列表,从而让其中的元素能按一定的顺序排列,而不是简单地返回一个已排序的列表副本。

>>> x = [3,4,2,5,8,7,6]
>>> x.sort()
>>> x
[2, 3, 4, 5, 6, 7, 8]
原文地址:https://www.cnblogs.com/TaleG/p/8675909.html