如何在Python 3中使用List方法

在本教程中,我们将介绍可用于使用Python中的列表数据结构的内置方法。我们将向列表中添加项目,从列表中删除项目,扩展列表,翻转和排序列表等。

介绍

Python 3有一些内置的数据结构,包括列表。数据结构为我们提供了一种组织和存储数据的方法,我们可以使用内置方法来检索或操作该数据。 为了充分利用本教程,您应该熟悉列表数据类型,其语法以及如何编制索引。您可以通过阅读教程审查名单在Python 3理解列表 。在这里,我们将通过内置的方法,您可以使用带有清单的工作。我们将向列表中添加项目和从列表中删除项目,扩展列表,反向和排序列表等。 重要的是要记住列表是可变的或可变的数据类型。不像字符串 ,这是不可改变的,只要你的清单上使用的方法,你会影响列表本身,而不是列表的副本。 在本教程中,我们将主要使用一个列表,其中包括各种鱼的库存,当鱼添加到市政水族馆或从市政水族馆中删除时,我们需要修改。

list.append()

该方法list.append(x)将一个项目(加x )到一个列表的末尾。我们将从分布在水族馆的鱼类列表开始。
fish = ['barracuda','cod','devil ray','eel']
这份名单是由4串项目,其指数的范围从'barracuda'在0至'eel'在索引3。 我们刚刚有一条新的鱼进入水族馆今天,我们想添加到我们的列表中的鱼。我们会通过我们的新鱼式,串'flounder'list.append()方法,然后打印出修改后的名单,以确认加入该项目。
fish.append('flounder')
print(fish)
['barracuda', 'cod', 'devil ray', 'eel', 'flounder']
现在,我们有我们与传递到项目结束5串项目的列表.append()函数。

list.insert()

list.insert(i,x)方法有两个参数,与i是你想添加一个项目的索引位置,并x作为项目本身。 我们的水族馆获得了另一条新鱼,an鱼。您可能已经注意到,到目前为止,名单fish是按字母顺序排列。 正因为如此,我们不希望只是字符串添加'anchovy'到年底fishlist.append()函数。 相反,我们将使用list.insert()添加'anchovy'到这个列表索引位置的开始0
fish.insert(0,'anchovy')
print(fish)
['anchovy', 'barracuda', 'cod', 'devil ray', 'eel', 'flounder']
在这种情况下,我们将字符串项添加到列表的前面。每个连续的项目现在将在一个新的索引号,因为他们都已下移。因此, 'barracuda'将在索引1, 'cod'将在指数2,和'flounder' -最后一个项目-将在索引5。 如果在这一点上,我们正在把一个雀鲷水族馆,我们想维护基于上述清单上的字母顺序,我们将投入项目索引3fish.insert(3,'damselfish')

list.extend()

如果我们要结合多个列表,我们可以使用list.extend(L)方法,该方法在第二列表作为其参数。 我们的水族馆欢迎来自另一个正在关闭的水族馆的四条新鱼。我们有这些鱼一起在列表中more_fish
more_fish = ['goby','herring','ide','kissing gourami']
现在,我们将添加列表中的项目more_fish到列表中fish和打印清单,以确保第二个列表成立:
fish.extend(more_fish)
print(fish)
['anchovy', 'barracuda', 'cod', 'devil ray', 'eel', 'flounder', 'goby', 'herring', 'ide', 'kissing gourami']
在这一点上,该列表fish是由10个项目。

list.remove()

当我们需要从列表中删除一个项目,我们将使用list.remove(x)方法,这在其价值相当于一个列表中删除的第一个项目x 。 一群当地的研究科学家来参观水族馆。他们正在研究接吻鱼的种类。他们已要求把我们接吻鱼借给他们,所以我们想删除'kissing gourami'从列表中的项目,以反映这种变化:
fish.remove('kissing gourami')
print(fish)
['anchovy', 'barracuda', 'cod', 'devil ray', 'eel', 'flounder', 'goby', 'herring', 'ide']
继使用的list.remove()方法,我们的名单不再有'kissing gourami'项目。 如果您在传递一个项目xlist.remove()并不在列表中存在,您会收到以下错误:
ValueError: list.remove(x): x not in list
请记住, list.remove()将只删除您传递给它的项目的第一个实例,因此,如果我们有两个接吻攀鲈在我们的水族馆,我们只借给一个科学家,我们可以使用的相同的构造fish.remove('kissing gourami')仍然有我们的名单上第二个接吻鱼。

list.pop()

我们可以使用list.pop([i])方法在列表中的指定索引位置返回的项目,然后删除该项目。 周围的方括号i对指数告诉我们,这个参数是可选的,所以如果我们不指定索引(如fish.pop()最后一个项目将被退回并删除。 我们的魔鬼射线已经变得太大,我们的水族馆,幸运的是,一个水族馆,几个城市可以适应光线的需要。我们将使用.pop()并指定索引号( 3串项) 'devil ray'从我们的名单中删除的项目,并通过返回它,我们将确认我们正在删除正确的项目。
print(fish.pop(3))
print(fish)
devil ray
['anchovy', 'barracuda', 'cod', 'eel', 'flounder', 'goby', 'herring', 'ide']
通过使用.pop()方法,我们能够返回,并删除'devil ray'从列表中fish 。 如果我们没有参数传递给此方法并执行fish.pop()最后一个项目'ide'将返回,然后从列表中删除。

list.index()

当列表开始变长时,我们更难以计数我们的项目以确定某个值位于什么索引位置。我们可以使用list.index(x) ,其中x相当于一个项目值,以便在那里该项目所在的列表中返回的索引。 如果存在与价值多个项目x ,此方法将返回第一个索引位置。
print(fish)
print(fish.index('herring'))
['anchovy', 'barracuda', 'cod', 'eel', 'flounder', 'goby', 'herring', 'ide']
6
虽然名单fish也不是很长,我们仍然能够确定该项目的索引位置'herring'不计。每个项目的索引对于知道非常重要,以便我们能够有效地操纵列表。 如果我们指定一个值,我们会收到一个错误.index()并没有这样的价值存在于给定列表: ValueError: 'x' is not in list

list.copy()

当我们用一个列表工作,可能想操纵它在多个方面同时还具有原始列表提供给我们不变的,我们可以用list.copy()使列表的副本。 我们将通过从返回的值fish.copy()为变量fish_2 ,然后打印出的价值fish_2以确保它具有相同的项目,如清单fish
fish_2 = fish.copy()
print(fish_2)
['anchovy', 'barracuda', 'cod', 'eel', 'flounder', 'goby', 'herring', 'ide']
在这点上,既fishfish_2是等价列表。

list.reverse()

我们可以通过使用逆向列表中的项目的顺序list.reverse()方法。 也许,我们使用反向字母顺序而不是传统的字母顺序更方便。 在这种情况下,我们需要使用.reverse()方法用fish列表具有列表到位被颠倒。
fish.reverse()
print(fish)
['ide', 'herring', 'goby', 'flounder', 'eel', 'cod', 'barracuda', 'anchovy']
使用后.reverse()方法,我们的名单开始的项目'ide'这是在我们列表的末尾,并结束'anchovy' ,这是在列表的开始。

list.count()

所述list.count(x)方法将返回值的次数x指定列表内发生。 当我们有一个包含大量匹配值的长列表时,我们可能需要使用此方法。 如果我们有一个较大的水族馆,例如,我们不得不对每一个项目,我们不得不每霓虹灯鱼,我们可以使用.count()来确定,我们有在任何给定时间霓虹灯鱼的总数。 我们将使用我们现有的清单来计算时代的项目数'goby'出现:
print(fish.count('goby'))
1
因为字符串'goby'只出现一次,当我们使用返回1号.count()方法。 让我们也使用这个方法与整数列表。我们的水族馆致力于为每一条鱼提供极大的关心,所以我们跟踪我们的鱼是多么老,所以我们可以确保他们的饮食满足鱼的需要,基于他们的年龄。本次名单, fish_ages相当于鱼从我们的其他列表,类型fish 。 因为1岁的鱼有特殊的饮食需求,我们要计算有多少1年鱼:
fish_ages = [1,2,4,3,2,1,1,2]
print(fish_ages.count(1))
3
整数1时在列表fish_ages 3倍,因此,当我们使用.count()方法中,返回的数字3。

list.sort()

我们可以使用list.sort()方法在列表中的项目进行排序。 就像list.count() list.sort()可以使它更加明显,我们多少有一定的整数值的有,也可以把数的未分类的列表转换成数字顺序。 让我们用整数列表, fish_ages看到.sort()中的操作方法:
fish_ages.sort()
print(fish_ages)
[1, 1, 1, 2, 2, 2, 3, 4]
通过使用.sort()fish_ages ,整数值按顺序返回。在实践中,由于这些年龄对应于特定的鱼,您可能需要在排序之前制作原始列表的副本。

List.clear()

当我们用列表做的,我们可以通过去除其中包含的所有值list.clear()方法。 地方政府决定接管我们的水族馆,使其成为我们城市人民享受的公共空间。由于我们不再水族箱自己的工作,我们不再需要保持鱼的清单,让我们清除fish列表:
fish.clear()
print(fish)
[]
我们收到的方括号作为我们的输出使用后.clear()的函数fish ,让我们知道,名单现在清除所有项目。

结论

作为一个可变的或可变的有序序列的元素,列表是Python中非常灵活的数据结构。列表方法使我们能够以复杂的方式使用列表。我们可以结合使用方法, 其他的方法来修改列表 ,以便有一个全方位的工具,在我们的程序有效地使用名单。