列表数据类型支持很多方法,列表对象的所有方法所示如下:
- list.append(x)
在列表末尾添加一个元素,相当于 a[len(a):] = [x] 。
python
>>> fruits = ['banana', 'apple', 'kiwi', 'banana', 'pear', 'apple', 'orange']
>>> fruits.append('grape')
>>> fruits
['banana', 'apple', 'kiwi', 'banana', 'pear', 'apple', 'orange', 'grape']
-
list.extend(iterable)
用可迭代对象的元素扩展列表。相当于 a[len(a):] = iterable 。
-
list.insert(i, x)
在指定位置插入元素。第一个参数是插入元素的索引,因此,a.insert(0, x) 在列表开头插入元素, a.insert(len(a), x) 等同于 a.append(x) 。
-
list.remove(x)
从列表中删除第一个值为 x 的元素。未找到指定元素时,触发 ValueError 异常。
-
list.pop([i])
删除列表中指定位置的元素,并返回被删除的元素。未指定位置时,a.pop() 删除并返回列表的最后一个元素。(方法中 i 两边的方括号表示该参数是可选的,不是要求输入方括号。)。
python
>>> fruit = ['apple', 'apple', 'banana', 'banana', 'grape', 'kiwi', 'orange', 'pear']
>>> fruits.pop()
'pear'
-
list.clear()
删除列表里的所有元素,相当于 del a[:] 。
-
list.index(x[, start[, end]])
返回列表中第一个值为 x 的元素的零基索引。未找到指定元素时,触发 ValueError 异常。
(可选参数 start 和 end 是切片符号,用于将搜索限制为列表的特定子序列。返回的索引是相对于整个序列的开始计算的。)
python
>>> fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', 'banana']
>>> fruits.index('banana')
3
>>> fruits.index('banana', 4) #从下标4开始,找到下一个'banana'
6
- list.count(x)
返回列表中元素 x 出现的次数。
python
>>> fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', 'banana']
>>> fruits.count('apple')
2
>>> fruits.count('tangerine')
0
- list.sort(*, key=None, reverse=False)
排序列表中的元素。
sorted( *, key=None, reverse=False)
具有两个可选参数,都必须指定为关键字参数。
key 指定带有单个参数的函数, 默认值为 None (直接比较元素)。
reverse 为一个布尔值。 如果设为 True,则每个列表元素将按反向顺序比较进行排序。
python
>>> fruits = ['banana', 'apple', 'kiwi', 'banana', 'pear', 'apple', 'orange', 'grape']
>>> fruits.sort()
>>> fruits
['apple', 'apple', 'banana', 'banana', 'grape', 'kiwi', 'orange', 'pear']
- list.reverse()
翻转列表中的元素。
python
>>> fruits.reverse()
>>> fruits
['banana', 'apple', 'kiwi', 'banana', 'pear', 'apple', 'orange']
- list.copy()
返回列表的浅拷贝。相当于 a[:] 。
不是所有数据都可以排序或比较。例如,[None, 'hello', 10] 就不可排序,因为整数不能与字符串对比,而 None 不能与其他类型对比。