Python中的列表是我们很常见的数据结构之一,也是很强大的数据结构之一!Python列表功能非常丰富,并且具有很多隐藏的技巧没有被发现。
创新互联拥有网站维护技术和项目管理团队,建立的售前、实施和售后服务体系,为客户提供定制化的网站制作、成都网站建设、网站维护、资阳托管服务器解决方案。为客户网站安全和日常运维提供整体管家式外包优质服务。我们的网站维护服务覆盖集团企业、上市公司、外企网站、商城网站开发、政府网站等各类型客户群体,为全球上1000家企业提供全方位网站维护、服务器维护解决方案。
1.使用Filter()函数
filter()函数采用两个参数:函数和可迭代项。 在这种情况下,我们将定义一个函数并过滤一个列表。
让我们用一个例子来尝试一下!我们将从列表开始,并过滤出所有小于3的项:
- original_list = [1,2,3,4,5]
- def filter_three(number):
- return number > 3
- filtered = filter(filter_three, original_list)
- filtered_list = list(filtered)
- print(filtered_list)
- # Returns [4,5]
让我们看看这里发生了什么:
2.具有列表理解
类似地,我们可以用列表理解过滤列表。记住,列表理解是定义和修改列表非常简单快捷的方式。
让我们看看如何通过列表理解来完成前面的任务:
original_list = [1,2,3,4,5]filtered_list = [number for number in original_list if number > 3]print(filtered_list)# Return [4,5]
从这两个示例中我们可以看出,列表理解是一种更简单,更快捷的过滤列表方法。
1.使用Map()函数
Python Map函数允许我们将函数应用于可迭代对象中的每个项。
假如我们有一个列表,想返回每个数字的平方。我们可以使用map()函数来实现这一点。让我们看一下具体操作:
- original_list = [1,2,3,4,5]
- def square(number):
- return number ** 2
- squares = map(square, original_list)
- squares_list = list(squares)
- print(squares)
- # Returns [1, 4, 9, 16, 25]
让我们探讨一下这里发生了什么:
首先,我们定义了原始列表和一个返回其参数平方(“number”)的函数。
然后,我们创建一个名为“squares”的新变量,它是map函数的结果,函数和原始列表作为其参数。
最后,我们创建另一个新变量,将list函数应用于squares变量。
这个方法有点复杂!接下来让我们看看清单理解!
2.具有列表理解
我们可以使用列表理解来修改列表项。这甚至是一个更容易和更优雅的方式来编写我们的代码。
让我们尝试一下!
- original_list = [1,2,3,4,5]
- squares_list = [number ** 2 for number in original_list]
- print(squares_list)
- # Returns [1,4,9,16,25]
在某些情况下,可能需要合并两个或多个列表。这就是zip()函数的作用:在每个索引处创建一个包含列表对应元素的对象。
让我们用一个例子来尝试一下:
- original_list = [1,2,3,4,5]
- reversed_list = original_list[::-1]
- print(reversed_list)
- # Returns: [5,4,3,2,1]
Python列表是有序的数据结构。因此,项目的顺序很重要。有时我们可能需要颠倒列表中的项,这可以使用Python切片操作轻松完成。
让我们用一个例子来尝试一下:
original_list = [1,2,3,4,5]reversed_list = original_list[::-1]print(reversed_list)# Returns: [5,4,3,2,1]
有时我们想查看列表中是否存在某个项。
我们只需使用in运算符即可完成此操作。
- games = ['Yankees', 'Yankees', 'Cubs', 'Blue Jays', 'Giants']
- def isin(item, list_name):
- if item in list_name: print(f"{item} is in the list!")
- else: print(f"{item} is not in the list!")
- isin('Blue Jays', games)
- isin('Angels', games)
- # Returns
- #Blue Jays在名单上!
- #Angels不在名单上!
如果你想在列表中找到最常见的项。例如,你可能在列表中记录了正反面游戏的获胜者,并且想知道哪个赢得最多。
- games = ['heads', 'heads', 'tails', 'heads', 'tails']
- items = set(games)
- print(max(items, key = games.count))
让我们看看这段代码做什么:
有时我们会得到一个列表,其中包含其他列表,也就是表中有表。你可以使用列表理解轻松做到这一点!
让我们尝试一下:
- nested_list = [[1,2,3],[4,5,6],[7,8,9]]
- flat_list = [i for j in nested_list for i in j]
- print(flat_list)
- # Returns [1, 2, 3, 4, 5, 6, 7, 8, 9]
如果需要检查列表中的所有项是否唯一,则可以使用集合的功能来完成此操作!
Python中的集合类似于列表(因为它是可变且无序的),但是它只能包含唯一的项。
为此,我们需要使用一个函数将列表转换为一个集合,并比较两个项的长度::
- list1 = [1,2,3,4,5]
- list2 = [1,1,2,3,4]
- def isunique(list):
- if len(list) == len(set(list)):
- print('Unique!')
- else: print('Not Unique!')
- isunique(list1)
- isunique(list2)
- # Returns
- # 唯一性
- # 不唯一
希望你学到了以上关于列表的新知识,以及如何以不同的方式运用起来!
网页题目:8种高级的Python列表使用技巧,都给你整理好啦(附实操代码)
文章位置:http://www.shufengxianlan.com/qtweb/news19/399769.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联