Rumah > pembangunan bahagian belakang > Tutorial Python > Pengaturcaraan berfungsi dalam Python

Pengaturcaraan berfungsi dalam Python

PHPz
Lepaskan: 2023-09-14 13:49:02
ke hadapan
1257 orang telah melayarinya

Pengaturcaraan berfungsi dalam Python

函数式编程语言是专门设计用于处理符号计算和列表处理应用的。函数式编程基于数学函数。一些流行的函数式编程语言包括:Lisp、Python、Erlang、Haskell、Clojure等。

函数式编程的特点

函数式编程的最显著特点如下:

  • 函数式编程语言是根据数学函数的概念设计的,它使用条件表达式和递归来执行计算。

  • 函数式编程支持高阶函数和惰性求值特性。

  • 与 OOP 一样,函数式编程语言支持抽象、封装、继承和多态性等流行概念。

函数式编程的优点

以下是优点 -

模块化 - 它强制你将问题分解成小块。程序更具模块化 作为结果。编写一个只做一件事的小函数比编写一个大函数更容易指定和编写 执行复杂的转换。小函数也更容易阅读和检查 错误。

简化调试

这些函数通常很小且明确定义,因此调试变得简化。当程序无法正常工作时,每个函数都是一个接口点,您可以在其中检查数据是否正确。

测试的便捷性

测试更容易,因为每个函数都是单元测试的可能主题。函数不依赖于运行测试之前需要复制的系统状态,相反,您只需综合正确的输入,然后检查输出是否符合预期。

可组合性

在编写功能式程序时,您将编写许多具有不同输入和输出的函数。其中一些函数将不可避免地专门针对特定应用程序,但其他函数将在各种程序中非常有用。

函数是一等对象

为了支持函数式编程,函数应该具备以下条件,Python 两者都有:将另一个函数作为参数并将另一个函数返回给其调用者。

在Python中,函数被视为一等对象,即我们可以将函数存储在变量中,从函数返回函数等。

以下是一些在Python中显示函数的示例,这些示例对于理解装饰器非常有用。

函数作为对象

在此示例中,函数被视为对象。此处,函数 demo() 被分配给变量 

示例

# Creating a function
def demo(mystr):
   return mystr.swapcase() # swapping the case

print(demo('Thisisit!'))
sample = demo
print(sample('Hello'))
Salin selepas log masuk

输出

tHISISIT!
hELLO
Salin selepas log masuk

将函数作为参数传递

在此函数作为参数传递。 demo3() 函数调用 demo()demo2() 函数作为参数。

示例

def demo(text):
   return text.swapcase()

def demo2(text):
   return text.capitalize()

def demo3(func):
   res = func("This is it!") # Function passed as an argument
   print (res)

# Calling
demo3(demo)
demo3(demo2)
Salin selepas log masuk

输出

tHIS IS IT!
This is it!
Salin selepas log masuk

Atas ialah kandungan terperinci Pengaturcaraan berfungsi dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan