当前位置: 代码迷 >> 综合 >> python中的 functools __call__ 内嵌函数 异曲同工之处
  详细解决方案

python中的 functools __call__ 内嵌函数 异曲同工之处

热度:69   发布时间:2023-12-22 01:53:02.0

学习python时,无意识中察觉到的,几种方法,异曲同工!

 1:先来看看内嵌函数:

def nadd(n):x=n    def add(y):z=x+yreturn zreturn addadd1=nadd(1)sum=add1(2)

 

2:__call__方法(可以简单的理解为这是类的括号运算符的重载方法)

class add(object):def __init__(self,x):self.x=xdef __call__(self,y):z=self.x+yreturn zadd1=add(1)sum=add1(2)

 

3:functools.partial

from functools import partialdef add(a, b):return a + badd1=partial(add, 1)sum=add1(2)