Skip to main content
 首页 » 编程设计

python之有没有办法在不改变函数体的情况下改变函数的返回值

2025年05月04日11yyy_WW

def f(x): 
    return (x - 2)/2  
def g(x): 
    return x 

此代码将执行此操作:

func = g(f) 

现在 func(1) = -1/2

如果我想修改 g(x)(而不是 f(x))怎么办

func = g(f)  
func(1) = 1/2 

有办法吗?

谢谢 编辑:f(x) 可以是任何可能返回负数的函数

请您参考如下方法:

>>> def f(x): 
...     return (x - 2)/2 
... 
>>> def g(function): 
...     return lambda x: abs(function(x)) 
... 
>>> func = g(f) 
>>> func(1) 
0.5