Python 中的部分函数?


每个人都喜欢写可重用的代码,对吗?那么部分函数是一个很酷的东西可以学习。部分函数允许我们派生出一个带有 x 个参数的函数,转换为一个具有较少参数和常量值的函数,为更受限制的函数设置。

我们可以通过 functools 库用 Python 编写部分函数应用。以下是 functools 库中部分函数的一个简单示例,其中添加了 operator 库的 add 函数。

>>> from functools import *
>>> from operator import *
>>> add(1,2)
3
>>> add1 = partial(add, 4)
>>> add1(6)
10
>>> add1(10)
14

Partial 是一个高阶函数,以函数作为输入(如 map 和 filter),但它还返回一个函数,该函数可以与程序中的任何其他函数以相同方式使用。

>>> list(map (add1, [1, 2, 3, 4, 5]))
[5, 6, 7, 8, 9]
>>> seven = partial(add1, 3)
>>> seven()
7

我们还可以在对象方法上使用部分函数,例如生成默认字符串的列表 -

>>> str1 = "Hello, Python"
>>> helloStr = partial(str1.replace, "Python")
>>> helloStr("Tutorialspoint")
'Hello, Tutorialspoint'
>>> helloStr("Java")
'Hello, Java'

部分函数应用是一种非常有用的工具,尤其是在您需要对单个对象应用一系列不同的输入或者需要将函数的一个参数绑定为常量时。

Python 函数可以帮助您轻松编写代码,并且更易于维护。

更新日期:2019-07-30

1K+ 浏览量

开启你的职业生涯

通过完成该教程获得认证

开始学习
广告