您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    3个Python函数帮顺序员们避免编写循环,提高运转速度
    时间:2020-05-02 21:03 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    行将开播:4月29日,民生银行郭庆谈商业银行金融科技赋能的探求与实际

    3个Python函数帮顺序员们避免编写循环,提高运转速度

    图源:wired

    降生于1991年的Python,这几年突然火了。简历上有了Python,失业竞争力瞬间提升,甚至一些小学教材上都出现了Python内容。这种言语的热度超过了以往任何时分。

    作为21世纪最盛行的言语之一,Python当然有很多幽默的函数值得深化探求和研讨。笔者明天就将从实际和实践两个方面,引见其中三个函数。

    这三个函数可不复杂,它们可以协助顺序员们避免编写循环,有时循环的运转成本是很高的。此外,这些函数还有助于提高运转速度。

    拿出笔小本本末尾学习吧!

    map()

    map() 函数的作用是将另一函数作为参数,与某种数组放在一同,旨在将函数(作为参数而导入的函数)运用于数组中的每一个项。其益处在于:

    · 无需编写循环

    · 2.比编写循环用时短

    图源:unsplash

    来看看实践效果。笔者采用名为num_func()的函数,该函数以一个数字作为参数。将该数字平方并除以二,然后前往。

    注:函数的操作是恣意选择的,用户可以在函数中执行任何想停止的操作。

    如今声明一串要运用num_func()的数字数组。注:map() 本身将会前往一个map对象,因此需求将其转为为一个列:

    半途而废!虽然不是多难的技术,但是尽能够避免循环总是坏事。

    reduce()

    reduce()则不同,必须从functools模块将其导入。该操作主要是将一个给定的函数运用于项目组,然后前往一个值。

    最后一部分很关键——reduce()函数不会前往一个项目组,而是前往一个值。察看以下图表,以对此概念详细化。

    在图表不完全清楚的状况下,出现出以下逻辑:

    1.5加10等于15

    2.15加12等于27

    3.27加18等于45

    4.45加25等于70

    70是前往的值。从实现代码末尾,先从functools模块导入reduce函数,再声明一个前往两个数字之和的函数:

    如今,可以在代码中重新查看图表,并验证一切内容能否正常任务:

    当然还有许多办法可以对列表中的项目停止汇总,这里只展现了函数任务原理中最复杂的一些例子。

    图源:business.blogthinkbig.com

    filter()

    这个函数也十分棒,它可以节省时间——包括编写和执行。望文生义,这个函数的作用是只将满足特定条件的项保留在数组中。

    与map()一样,预先声明函数,然后将其和迭代列表一同传递到 filter()。

    来一个示例:现已提早声明了一个名为 more_than_15()的函数,即假设参数给定的项大于15,则前往True。

    接上去,声明一个数字数组,并将其作为filter()函数中的第二个参数导入:

    正如所料,只要三个值满足给定条件。是不是看起来比循环好多了?

    图源:unsplash

    用好这三个函数,你的代码看起来会更好,循环数也会更少。游刃有余,要多练习呀~

    【编辑引荐】

    Serverless实战:用20行Python代码轻松搞定图像分类和预测

    我,30岁顺序员,距离退休只剩5年!

    不写代码,可视化堪比Python,指导称心的报表工具原来是这样的

    不停机还能交流代码?6年的 Java顺序员表示不可思议

    不朽 C++ 为新贵 Python 运用提速 8000 倍!

    (责任编辑:admin)