python性能,python嵌套循环优化_减少循环嵌套,提升代码运行速度!你不知道的3个实用Python函数...

 2023-09-25 阅读 23 评论 0

摘要:作为21世纪最流行的语言之一,Python有很多有趣的功能值得深入探索和研究。今天将讨论其中的三个你可能没听说过的函数,将从理论和实际应用两方面为你详细讲解。我之所以要讨论这些函数,主要是因为它们可以帮助你避免陷入编写循环中。在某些情况下,

作为21世纪最流行的语言之一,Python有很多有趣的功能值得深入探索和研究。今天将讨论其中的三个你可能没听说过的函数,将从理论和实际应用两方面为你详细讲解。

我之所以要讨论这些函数,主要是因为它们可以帮助你避免陷入编写循环中。在某些情况下,循环的运行成本很高,除此之外,这些函数还有助于提高速度。

以下是本文将介绍以下三个函数:map()

python性能,filter()

reduce()

即使你以前听说过这些函数,但是通过我列出的这些理论和例子来强化你的知识储备也没有坏处。

所以,不需要你花费太多的精力来整理,我都给你准备好啦!

python 运行效率?一.map()

map()函数的作用是:将另一个函数作为参数,与某种数组放在一起。其思想是将函数(作为参数传入的函数)应用于数组中的每一项。

这有两个原因:你不需要写循环

比循环还快

让我们看看它的实际效果。我将声明一个名为 num_func()的函数,该函数以一个数字作为参数。这个数字是平方的,除以2,然后返回。注意,操作是任意选择的,你可以在函数中执行任何你想要的操作:

现在让我们声明一个要应用 num_func()的数字数组。请注意,map()本身将返回一个 map 对象,因此你需要将其转换为一个列表:

Python运行速度、这个过程成功完成了,这里没有什么突破性的东西,但是尽可能避免循环是件好事。

二.filter()

这是另一个很好的函数,它可以节省你的时间,包括编写和执行。顾名思义,这个想法是只将满足特定条件的项保留在数组中。

与 map()一样,我们可以预先声明函数,然后将其传递到 iterable 列表旁边的 filter()。

让我们看看这个动作。我已经声明了一个名为 more_than_15()的函数,顾名思义,如果作为参数给定的项大于15,它将返回True:

接下来,我们声明一个数字数组,并将其作为 filter()函数中的第二个参数传递:

python嵌套列表输出,如图所示,只有三个值满足给定条件。

三.reduce()

reduce()与前两个函数有点不同。首先,我们必须从functools模块进行导入。这背后的主要思想是,它将把一个给定的函数应用于项数组,并因此返回一个值。

最后一部分很关键-reduce()不会返回一个项数组,它总是返回一个值。让我们看一个图表,使这个概念具体化。

下面是在图表不完全清楚的情况下写出的逻辑:5加10等于15

python嵌套列表,15加上12,结果是27

27加上18,结果是45

45加上25,结果是70

70是返回的值。首先从代码实现开始,让我们从 functools 模块导入 reduce 函数,并声明一个返回两个数字之和的函数:

现在,我们可以在代码中重新查看图表,并验证所有内容是否正常工作:

当然,这只是展示这些函数工作原理的最简单的例子,肯定还有其他方法可以对列表中的项目进行汇总。

python嵌套类?四.最后

希望你能在日常生活中利用这三个功能!速度的提高可能不是很大,这取决于你处理的数据量,但是代码能在更少的循环下看起来会更好。

如果你有其他的例子,不要犹豫!在评论区分享给我们吧!

--END--

查看更多最新资讯,欢迎大家点击上方链接登录我们的AI社区。

以及关注我们的公众号:为AI呐喊(weainahan)

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/94015.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息