Python基础知识列表popre

北京白癜风的最好医院 https://mip.yyk.99.com.cn/fengtai/68389/
前言

今天,我们来学习一下列表中其余常用方法函数:

用于删除元素:pop()函数和remove函数

用于翻转或元素位置对换:reverse()函数

用于列表中元素的排序:sort()函数

pop方法

列表pop方法删除列表中指定索引的元素并且返回该元素。如果不指定索引位置,则默认删除列表中最后一个元素。

我们通过一个例子来认识一下:

该例子,先创建了一个lst=[1,2,]的列表,而print(lst.pop())表示默认删除最后一个元素;print(lst.pop(0))表示删除索引为0的元素;最后的print(lst)表示输出lst列表中剩余的元素,即[2]。

当列表是空的,使用pop方法会怎样呢?我们来试验一下吧!

我们可以看见,报错内容为:一个空列表使用pop方法会引发IndexError异常。因此,我们可以知道由于没有元素可以被删除,程序会报错。

remove方法

列表的remove方法会将指定元素从列表中删除,如果这个元素在列表中存在多个,则删除索引最小的那一个,也就是列表中第一个与指定元素相同的数据。

如果被删除的元素在列表中不存在,则会引发ValueError异常:

lst.remove(7)#列表中没有7

列表的reverse方法

列表reverse方法可以将列表里的元素翻转,这种翻转只是将首尾元素对换位置,千万不要把列表翻转和列表排序联系在一起,他们没有任何关系。

首先,创立一个lst的列表,然后调用reverse()方法进行首尾元素对换,最后输出对换后的lst列表。

我们其实可以自己写一个翻转的方法函数,其翻转的算法的一个简单的实例如下:

列表的sort方法

列表的sort方法可以对列表里的元素进行排序。

sort方法有两个重要的参数:key和reverse。其中key来设置一个函数用于返回用于比较大小的数值。reverse参数决定排序是从小到大还是从大到小。

下面是一个简单的sort方法使用示例。

sort方法的定义如下:

参数key指定了排序所用的数值,reverse设置排序的方法,默认为False表示从小到大排序。

reverse=True表示对上面的列表从大到小排序。

上面的例子中列表里的元素都是整数,因此,用不上key这个参数。但是如果列表里的元素无法直接进行大小比较,比如:列表中元素是整数和字符串的数字。

处理无法直接进行大修比较时,那么必须指定参数key,参数key必须是一个函数,返回列表里元素用于比较大小的值。

我们来看一个列表里的元素无法直接进行大小比较的例子:

例子中的列表内元素有字符串(可以转换成int),也有整数。但是字符串与整数无法直接比较大小。因此,在比较大小时,我们可以将字符串转为整数,然后进行比较。其中lambda是匿名函数,如果你对匿名函数不了解可以阅读以下文章:

Python核心技术——简洁的匿名函数(上)Python核心技术——简洁的匿名函数(中)Python核心技术——简洁的匿名函数(下)

我们除了使用lambda表达式,还可以使用自定义函数

列表里的数据是元组,元组之间无法直接比较大小,因此,使用自定义函数


转载请注明:http://www.aierlanlan.com/tzrz/5425.html