介绍
这篇文章将为大家详细讲解有关python函数封装过程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
<强> 1,创建名为函数的类,它可以包装任何函数,并通过重写__call__方法调用该函数。强>
它还提供了一种叫做关键的方法,它返回一个元组,使该函数在整个代码库中是唯一的。
<>之前得到inspect import getfullargspec , , class 函数(对象): “““才能函数类是对标准的Python函数的封装“““ def 才能__init__(自我,,fn): ,,,self.fn =fn ,,,, def 才能;__call__(自我,,* args,, * * kwargs): ,,,“““当像函数一样被调用时,它就会调用被封装的函数,并返回该函数的返回值“““ ,,,return self.fn (* args,, * * kwargs) , , def 才能;关键(自我,,arg游戏=None): ,,,“““返回一个键,能唯一标识出一个函数(即便是被重载的)“““ ,,,#,如果不指定参数,则从函数的定义中提取参数 ,,,if args is 没有: ,,,,,args =, getfullargspec .args (self.fn) ,,,, ,,,return 元组([ ,,,,,self.fn.__module__, ,,,,,self.fn.__class__, ,,,,,self.fn.__name__, ,,,,,len ([] args ,或是), ,,,)<强> 2,重写__call__方法将调用封装函数并返回计算值。强>
这使得函数的实例像函数一样被调用,其行为与封装的函数完全相同。
def 区域(l,, b): return 才能;l *, b , , 在祝辞祝辞,func =,函数(地区) 在祝辞祝辞,func.key () (& # 39;__main__ # 39;,, & lt; class & # 39;函数# 39;祝辞,,& # 39;区域# 39;,,2) 在祝辞祝辞,func (3, 4) 12
关于“python函数封装过程的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。