python函数在函数调用变量

时间:2016-10-24 12:59:33

标签: function python-3.x in-function

这是作业 编写一个函数partial,它接受另一个函数和一个像数据一样的值。 Partial应该返回一个与给定函数具有相同功能的新函数,但是给定functuin的第一个参数绑定到作为partial的第二个参数给出的值

run example:
>>> def add(n, m): return n + m
...
>>> add_five = partial(add, 5)
>>> add_five(3)
8
>>> add_five(16)
21

我不太明白这项任务,而且我是功能新功能,但到目前为止我已经这样做了,我认为我是正确的方式?

def add(n,m):
   return n+m

def partial(func,number):
    def add_n(number):
        return func(0,number)+number
    return add_n

2 个答案:

答案 0 :(得分:0)

首先:

  • 部分应该做什么?

它允许您在已经应用了一些参数的情况下从另一个函数增加新函数。喜欢在你的情况下,你总是添加一些东西到5号。

在这里可以找到好的答案:Currying in Python

回答你关于如何实现自己的部分功能的问题:

def add(n,m):
    return n+m

def partial(func,number):
    def add_n(arg):
        return func(number,arg)
    return add_n

答案 1 :(得分:0)

我建议阅读this link。这将向您展示如何编写部分函数,​​以便您可以编写自己的函数或使用已经编写的函数。

使用已经制作的可以使用:

from functools import partial

add_n = partial(add, 5)