2018年1月16日

为函数的参数指定类型

摘要: @typeassert(int, int, list)实现 java中 String name, int age 这种形式的参数,Python 参数必须为指定类型.如不符合则raise 错误信息. from inspect import signaturedef typeassert(*ty_arg 阅读全文

posted @ 2018-01-16 14:39 linuxSu 阅读(307) 评论(0) 推荐(0) 编辑

装饰器函数导致的原函数的元数据被替代--保存元数据

摘要: 我们使用装饰器函数后,会导致元数据被覆盖成装饰器函数的元数据,例如__name__,下例子如果不添加 @wraps(func),则输出结果为wrapper, 我们添加后,输出结果为test@wraps(func): 相当于 update_wrapper(wrapper,func,WRAPPER_AS 阅读全文

posted @ 2018-01-16 14:38 linuxSu 阅读(306) 评论(0) 推荐(0) 编辑

针对迭代程序效率低下-装饰器函数

摘要: 因为在做迭代时,很多函数值计算都是重复的,导致内存消耗过大,资源冗余过多,程序执行速度效率低下.所以我们引用装饰器函数解决这个问题. 以斐波那契数列为例, 因为n的值总为 n-1 和 n-2 的值的和(n>=2),所以为函数添加缓存cache,我们每次执行程序时都先查找缓存中是否有该数字对应的函数, 阅读全文

posted @ 2018-01-16 14:26 linuxSu 阅读(164) 评论(0) 推荐(0) 编辑

导航