list 类型中的所有方法如下:
append(obj)
:在列表末尾添加一个元素。extend(iterable)
:在列表末尾添加一个可迭代的对象中的所有元素。insert(i, obj)
:在列表的 i 位置插入一个元素。remove(obj)
:移除列表中第一个匹配 obj 的元素。pop([i])
:移除并返回列表中指定位置的元素。如果不指定位置,默认为移除并返回最后一个元素。clear()
:移除列表中的所有元素。index(obj)
:返回列表中第一个匹配 obj 的索引。count(obj)
:返回列表中 obj 出现的次数。sort(*, key=None, reverse=False)
:对列表进行排序。如果不需要保持原来的排序顺序,建议使用此方法,因为此方法的效率要比 sorted 函数高。reverse()
:将列表中的元素反转。
以上方法除了 sort
方法外,都是修改列表自身,而非返回一个新的列表。如果需要返回一个新的列表,可使用列表切片或者列表生成式等方法。
下面是每个方法的代码演示
1、append(obj)
在列表末尾添加新的对象,新的元素被添加到列表的末尾,作为整体列表的最后一个元素。
2、extend(iterable)
在列表末尾添加一个可迭代的对象中的所有元素。
注意:对于 extend()
方法,它要求传入的参数是一个可迭代对象,例如列表、元组、集合等,而不是单个的值或字符串。
例如,如果你想将单个字符串‘orange’加入到列表中,你可以将它放在一个列表中,然后将该列表作为参数传递给 extend()
方法,像这样:
如果你不将‘orange’放入到列表中,那它会将每一个字符串单独添加到列表中,如下图所示:
3、insert(i,obj)
list.insert(index, obj)。将对象插入到列表中的指定位置,即将新元素插入到指定的索引位置,原来的元素会向后移动一个位置。
4、remove(obj)
移除列表中某个值的第一个匹配项,如果该值不在列表中会报错。
5、pop(【i】)
移除并返回列表中指定位置的元素。如果不指定位置,默认为移除并返回最后一个元素。
6、clear()
移除列表中的所有元素。
7、index(obj)
从列表中找出某个值第一个匹配项的索引位置。
如果你想查询列表中第二个或第三个匹配项的索引位置,可以使用列表的 index()
方法结合切片来实现。
下面是使用 index()
方法查询第二个匹配项的索引位置的示例:
在上面的示例中,我们首先使用 index()
方法找到第一个 'banana'
的索引位置,在这里是索引位置 1。然后,我们将这个结果加 1,即 fruits.index('banana') + 1
,作为第二个 'banana'
的起始位置进行搜索,得到索引位置 3。
类似地,如果你想查询第三个匹配项的索引位置,可以继续使用相同的逻辑:
8、count(obj)
返回列表中 obj 出现的次数
9、sort(*, key=None, reverse=False)
sort()
是列表的一个方法,用于对列表中的元素进行排序。它可以按照升序(从小到大)或降序(从大到小)对列表进行排序。
下面是一些使用 sort()
方法的示例:
在上面的示例中,我们先创建了两个列表 numbers
和 fruits
。然后,我们分别调用这两个列表的 sort()
方法对它们进行排序。由于没有指定排序方式,默认情况下会按照升序进行排序。
可以看到,numbers
列表中的元素被按照从小到大的顺序重新排列了,以及 fruits
列表中的元素按照字母顺序重新排列了。
如果想要对列表元素进行降序排序,可以指定 reverse=True
参数:
需要注意的是,sort()
方法会直接修改原始列表,而不会返回一个新的排序后的列表。所以在上面的示例中,numbers
和 fruits
列表被修改为排序后的结果。
10、revese()
将列表中的元素反转。
以上方法除了 sort
方法外,都是修改列表自身,而非返回一个新的列表。
注:
obj
:表示要添加、删除、查找或比较的元素值。iterable
:表示一个可迭代的对象,例如另一个列表或者字符串,用于添加多个元素到列表中。i
:表示要插入元素的位置索引值。key
:表示一个函数,用于指定元素排序的键值。reverse
:表示一个布尔值,用于指定是否按照降序进行排序。