当前位置: 首页 > 后端技术 > Python

【Python1-7】Python动手教程-详细列表List

时间:2023-03-26 18:22:28 Python

List作者|弗拉德来源|vlad(公众号:fulade_me)列表,在其他语言中也称为数组,是创建一系列按特定顺序排列的元素。您可以创建一个包含所有字母、数字0-9或所有家庭成员姓名的列表。您还可以创建多个列表并将这些列表放在一个列表中。在Python中,方括号[]用于表示一个列表,逗号用于分隔其中的元素。下面是一个包含几种常见水果的简单列表示例:fruits=['Apple','Banana','Pear','Orange']print(fruits)['Apple','Banana','Pear','Orange']访问列表数据列表是一个有序的数据集合,每个元素都有一个位置参数。例如上面的水果列表,Apple的position参数为0,Banana的position参数为1。要访问一个列表元素,表示列表的名称,后面是元素的索引,用方框括起来括号。例如,下面的代码从列表fruits中选择第一个水果:fruits=['Apple','Banana','Pear','Orange']print(fruits[0])Apple索引全部来自0列表位置所有的参数都是从0开始的,而不是1。对于初学者来说,这一点一定要牢记。如果您在编码过程中发现提取的元素与您预期的不同,请查看您是否犯了这种简单的错误。第二个列表元素的索引为1。根据这个简单的计数方法,访问列表中的任何元素,将其位置减1,并将结果作为索引。例如,要访问第4个列表元素,请使用索引3。以下代码访问索引1和3处的水果:fruits=['Apple','Banana','Pear','Orange']print(fruits[1])print(fruits[3])BananaOrangePython访问最后一个List元素提供了一种特殊的语法。通过将索引指定为-1,Python可以返回最后一个列表元素:fruits=['Apple','Banana','Pear','Orange']print(fruits[-1])Orange此处返回Orange。此语法很有用,因为您经常需要在不知道列表长度的情况下访问最后一个元素。此约定也适用于其他负索引,例如:索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,依此类推。修改列表元素要修改列表元素,请指定列表名称、要修改的元素的索引以及该元素的新值。例如,假设有一个水果列表,第一个元素是Apple,如何修改它的值?fruits=['Apple','Banana','Pear','Orange']print(fruits[0])print(fruits)Apple['Apple','Banana','Pear','Orange']#开始将第一个元素修改为Cherryfruits[0]='Cherry'print(fruits[0])print(fruits)Cherry['Cherry','Banana','Pear','Orange']添加元素到列表中您可以添加出于多种原因将新元素添加到列表中。比如商城增加了一个新的水果,那么fruits就需要再增加一个水果。Python提供了几种向现有列表添加新数据的方法。1.在列表的末尾添加元素向列表添加新元素时,最简单的方法是将元素追加到列表的末尾。fruits=['Apple','Banana','Pear','Orange']print(fruits)fruits.append('Cherry')print(fruits)方法append()将元素Cherry添加到列表末尾而不影响列表中的所有其他元素。['Apple','Banana','Pear','Orange']['Apple','Banana','Pear','Orange','Cherry']append()可以满足我们动态创建数组的需求。例如,我们可以先创建一个空列表,然后使用一系列的append()语句来动态添加元素。例如:fruits=[]fruits.append('Apple')fruits.append('Banana')fruits.append('Pear')print(fruits)['Apple','Banana','Pear']这种ofcreation的方法比较常用,因为很多时候,我们会在代码的执行过程中知道哪些元素需要添加到列表中,哪些元素不需要添加。2.在列表中插入元素使用方法insert()可以在列表的任意位置添加新元素。但是,您需要指定新元素的索引和值。fruits=['Apple','Banana','Pear']fruits.insert(0,'Orange')print(fruits)['Orange','Apple','Banana','Pear']在这种情况下,在索引0处插入橙色。此操作将列表中的所有其他元素向右移动一个位置。需要注意的是,插入数据的索引不能超过列表当前的最大索引值。如果我们执行fruits.insert(10,'Orange'),就会报错。你可以试试。从列表中删除一个元素我们经常需要从列表中删除一个元素。比如像苹果这??样的水果因为缺货需要下架,我们就需要把苹果从列表中移除。您可以根据位置或值从列表中删除元素。1.使用del语句删除元素如果知道要删除的元素在列表中的位置,可以直接使用del语句。fruits=['Apple','Banana','Pear']print(fruits)['Apple','Banana','Pear']delfruits[0]print(fruits)['Banana','Pear']使用del删除任何位置的列表元素,前提是其索引已知。以下示例演示如何删除水果列表中的第二个元素fruits=['Apple','Banana','Pear']print(fruits)['Apple','Banana','Pear']delfruits[1]print(fruits)['Apple','Pear']从输出中,第二个元素已被删除。2.使用方法pop()删除元素有时,您想从列表中删除一个元素,然后使用它的值。比如你从货架上拿了一个水果,你需要把这个水果放在明天的购物清单里。pop()方法删除列表末尾的元素并允许您继续使用它。fruits=['Apple','Banana','Pear']print(fruits)poped_fruit=fruits.pop()print(fruits)['Apple','Banana']print(poped_fruit)Pear执行pop()方法,删除原数组的最后一个元素,将最后一个元素作为返回值返回。3.你一定猜到了弹出列表中任意位置的元素。我们只需要在pop()方法中传入我们要移除的元素的索引即可。fruits=['Apple','Banana','Pear']print(fruits)['Apple','Banana','Pear']first_fruit=fruits.pop(0)print(first_fruit)Apple别忘了,every当你使用pop()时,弹出的元素不再在列表中。如果您不确定是使用del语句还是pop()方法,这里有一个简单的经验法则:如果您想从列表中删除一个元素并且不以任何方式使用它,请使用del语句;要在删除元素后继续使用它,请使用方法pop()。4.根据值删除元素有时,我们不知道要删除的值在列表中的位置。如果您只知道要删除的元素的值,请使用remove()方法。fruits=['Apple','Banana','Pear']print(fruits)['Apple','Banana','Pear']fruits.remove('Apple')print(fruits)['Banana','Pear']方法remove()仅删除列表中第一次出现的指定值。也就是说,如果苹果在水果列表中多次出现,调用remove()方法只会删除第一个苹果。fruits=['Apple','Banana','Pear','Apple']print(fruits)['Apple','Banana','Pear','Apple']fruits.remove('Apple')print(fruits)['Banana','Pear','Apple']合并列表在我们创建的列表中,元素的顺序通常是不可预测的。因为我们并不总是能够控制用户提供数据的顺序。我们经常需要以特定的顺序呈现信息。有时,您希望保持列表元素的原始排序顺序,有时您需要调整排序顺序。Python提供了多种组织列表的方式,可以根据具体情况选择。使用方法sort()对列表进行永久排序Python方法sort()允许您轻松地对列表进行排序。假设您有一个水果列表,并希望按字母顺序排列这些水果。为了简化这个任务,我们假设这个列表中的所有值都是小写的。fruits=['梨','香蕉','苹果']print(水果)['梨','香蕉','苹果']fruits.sort()print(水果)['苹果','香蕉','pear']方法sort()永久修改列表元素的排序顺序。水果现在按字母顺序排列,永远无法恢复到原来的顺序。我们还可以按逆字母顺序对列表元素进行排序,为此,只需将参数reverse=True传递给sort()方法即可。fruits.sort(reverse=True)print(fruits)['pear','banana','apple']使用函数sorted()临时对列表进行排序以保留列表元素的原始顺序,同时将它们呈现在具体顺序对于它们,使用函数sorted()。函数sorted()允许您以特定顺序显示列表元素,而不影响它们在列表中的原始顺序。让我们尝试在水果列表中调用此函数。fruits=['pear','banana','apple']print(fruits)['pear','banana','apple']print(sorted(fruits))['apple','banana','pear']#再次输出fruitsprint(fruits)['pear','banana','apple']注意调用函数sorted()后,列表元素的顺序没有改变。如果要以反向字母顺序显示列表,还可以将参数reverse=True传递给函数sorted()。当不是所有值都是小写时,按字母顺序排列列表比较复杂,我们稍后会详细解答。反转输出列表要反转列表元素的排序顺序,请使用方法reverse()。假设水果列表是按购买时间排序的,很容易将水果倒序排列:fruits=['pear','banana','apple']print(fruits)['pear','banana','apple']fruits.reverse()print(fruits)['apple','banana','pear']reverse()并不是说??把列表元素按字母倒序排列,只是把列表的排列倒过来元素顺序。reverse()方法永久修改列表元素的顺序,但可以随时恢复到原来的顺序。为此,只需在列表上再次调用reverse()以获得列表的长度。使用函数len()可以快速知道列表的长度lengthfruits=['pear','banana','apple']len(fruits)3获取列表的长度在开发过程中非常有用。例如,我们可以使用len()方法来获取当前正在处理的水果的种类。销售。尝试一下7-1将一些朋友的名字存储在一个列表中,并将其命名为names。依次访问列表的每个元素,打印每个朋友的名字。7-2客人名单:如果你可以邀请任何人(在世的或死去的)与你共进晚餐,你会邀请谁?请创建一个包含至少3个您想邀请的人的列表,然后打印该列表。7-3修改客人名单:您刚得知有一位客人不能赴约,需要再邀请一位客人。修改嘉宾名单,将未能赴约的嘉宾姓名替换为新邀请的嘉宾姓名。然后再次打印列表。7-4添加客人:您刚找到一张更大的餐桌,可以容纳更多客人。请想想你想邀请哪三位客人。使用insert()将新客人添加到列表的开头。使用insert()将另一个新客人添加到列表的中间。使用append()将最后一位新客人添加到列表的末尾。7-5Shortlist:你刚刚得知你新买的桌子来不及了,所以你只能邀请两位客人。使用pop()从列表中不断删除客人,直到只有两个客人。每次客人从列表中弹出时打印出来。7-7环顾世界:想想至少5个你想去旅行的地方。将这些位置存储在列表中,并确保元素不是按字母顺序排列的。以原始排序顺序打印列表。不用担心整洁的输出,只需打印原始Python列表即可。使用sorted()按字母顺序打印此列表而不修改它。再次打印列表,确认排序顺序没有改变。使用sorted()以反向字母顺序打印此列表而不修改它。再次打印列表,确认排序顺序没有改变。使用reverse()修改列表元素的排序顺序。打印列表以验证排序顺序确实已更改。使用reverse()再次修改列表元素的顺序。打印列表以验证原始排序顺序已恢复。使用sort()修改列表,使其元素按字母顺序排列。打印列表以验证排序顺序确实已更改。使用sort()修改列表,使其元素按相反的字母顺序排列。打印列表以验证排序顺序确实已更改。如果你想查看作业答案,你可以去我的Githu仓库