python 使用此包装器而不是崩溃从函数中获取默认输出。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 使用此包装器而不是崩溃从函数中获取默认输出。相关的知识,希望对你有一定的参考价值。
from functools import wraps
class default_output(object):
"""returns the backup plan if the decorated method fails
by: Cody Kochmann
"""
def __init__(self, backup_output, logger=print):
self.backup_output = backup_output
self.logger = logger
def __call__(self,func):
assert callable(func), "default_output needs a callable target to wrap"
def wrapper(*args, **kwargs):
print(args,kwargs)
try:
return func(*args, **kwargs)
except Exception as ex:
# this is where logging would happen
self.logger(ex)
# ====================================
return self.backup_output
return wrapper
以上是关于python 使用此包装器而不是崩溃从函数中获取默认输出。的主要内容,如果未能解决你的问题,请参考以下文章
Python忽略属性设置器而支持属性获取器
Laravel 获取构建器而不是关系
在开关中调用属性设置器而不是获取器(Xcode 9.3 和 9.4)
python 使用对象和装饰器而不是仅使用一个方法和一些常量的类
从 Javascript 调用包装器函数会导致应用程序崩溃 - React-Native
枚举器而不是类实例化的构造函数?