千锋教育-做有情怀、有良心、有品质的职业教育机构

Python什么是函数式编程?

来源:千锋教育
发布时间:2023-11-07 02:18:59
分享

函数式编程使用一系列的函数解决问题。函数仅接受输入并产生输出,不包含任何能影响产生输出的内部状态。任何情况下,使用相同的参数调用函数始终能产生同样的结果。

在一个函数式的程序中,输入的数据“流过”一系列的函数,每一个函数根据它的输入产生输出。函数式风格避免编写有“边界效应”(sideeffects)的函数:修改内部状态,或者是其他无法反应在输出上的变化。完全没有边界效应的函数被称为“纯函数式的”(purelyfunctional)。避免边界效应意味着不使用在程序运行时可变的数据结构,输出只依赖于输入。

可以认为函数式编程刚好站在了面向对象编程的对立面。对象通常包含内部状态(字段),和许多能修改这些状态的函数,程序则由不断修改状态构成;函数式编程则极力避免状态改动,并通过在函数间传递数据流进行工作。但这并不是说无法同时使用函数式编程和面向对象编程,事实上,复杂的系统一般会采用面向对象技术建模,但混合使用函数式风格还能让你额外享受函数式风格的优点。

为什么使用函数式编程?

函数式的风格通常被认为有如下优点:

逻辑可证

这是一个学术上的优点:没有边界效应使得更容易从逻辑上证明程序是正确的(而不是通过测试)。

模块化

函数式编程推崇简单原则,一个函数只做一件事情,将大的功能拆分成尽可能小的模块。小的函数更易于阅读和检查错误。

组件化

小的函数更容易加以组合形成新的功能。

易于调试

细化的、定义清晰的函数使得调试更加简单。当程序不正常运行时,每一个函数都是检查数据是否正确的接口,能更快速地排除没有问题的代码,定位到出现问题的地方。

易于测试

不依赖于系统状态的函数无须在测试前构造测试桩,使得编写单元测试更加容易。

更高的生产率

函数式编程产生的代码比其他技术更少(往往是其他技术的一半左右),并且更容易阅读和维护。

以上内容为大家介绍了Python什么是函数式编程?,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • Python 解释器的作用 python解释器的主要作用是将我们在.py文件中写好的代码交给机器去执行,比较常见的解释器包括如下几种:CPython:官方解释器,我们从官网下载安装后获得的就是这个解释器,它使用C语言开发,是使用
  • Python 领域模型 python需求分析阶段不区分面向对象还是面向过程领域模型是完成从需求分析到面向对象设计的一座桥梁领域模型定义:领域模型是对领域内的概念或现实世界中对象的可视化表示,又称为观念模型,领域对象模型,分析
  • Python 图的功能 综述UML是数据库设计过程中,在E-R图(实体-联系图)的设计后的进一步建模。要了解一下UML设计中有的图例及基本作用。首先对UML中的各个图的功用做一个简单介绍:用例图描述角色以及角色与用例之间的连
  • 使用Python执行系统命令方法 Python是一款操作简单的编程语言,内置丰富的库,能够很容易的实现强大的功能,在使用Python进行框架搭建时,往往需要用到Python执行系统命令,一些开发人员对此不熟悉,以下是具体的操作方法:1
  • Python 的threading模块 python(CPython)提供了_thread和threading两个线程模块,_thread是低级模块,threading对_thread进行了封装,提高了_thread原有功能的易用性以及扩展
  • python 函数基础 一,函数是什么?函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,具体区别,我们后面会讲,编程中的函数在英文中也有很多不同的叫法。在BASIC中叫做subroutine(子过程