python-decorators

    3热度

    1回答

    考虑以下装饰: class connector(object): def __init__(self, signal): self.signal = signal def __call__(self, slot_func): def wrapper(*args, **kwargs): slot_func(*args, **kwargs)

    5热度

    1回答

    我从thecodeship上的一个很棒的教程中学到了一些关于装饰器的知识,但是通过一个示例发现自己颇为困惑。 首先给出一个简单的例子,然后给出一个装饰器的解释。 def p_decorate(func): def func_wrapper(name): return "<p>{0}</p>".format(func(name)) return func_wrappe

    0热度

    1回答

    我有一个sqlalchemy和遗留数据库的问题。假设我有这样的模型 class A(Base): foo = Column(String) modified_at = Column(DateTime, default=func.now, onupdate=func.now()) class B(Base): bar = Column(String) mo

    2热度

    3回答

    这类似于How to call a method implicitly after every method call?但蟒蛇问题 说我有一些属性(例如self.db)与crawl_1(self, *args, **kwargs)和爬虫类之后得到一个名为(装饰?)方法另一个save_to_db(self, *args, **kwargs)节省了爬行结果到数据库(self.db)。 我想以某种方式有

    0热度

    1回答

    我试图从robotframework关键字调用python函数。 python函数已被修饰为使用Builtin库中的run_keyword进行调用。这是因为机器人日志显示结构良好,如果库函数是通过内置库中的run_keyword函数调用的。而不是直接调用。但是这会导致无限循环。有没有一个解决方案来优雅地完成目标? robotkeyword : do something #creates a

    4热度

    2回答

    我想设计一个可以很容易地做出数据处理管道的异步管道。管道由几个功能组成。输入数据进入管道的一端,并在另一端出来。 我想设计在一个方法管道: 附加功能可以在管道 功能已经在流水线可以被弹出来插入。 这里是我想出了: import asyncio @asyncio.coroutine def add(x): return x + 1 @asyncio.coroutine def

    1热度

    2回答

    我在写一个非常简单的装饰器,给我一些关于函数的基本调试信息。 from functools import wraps from time import perf_counter class debug(object): def __init__(self, Time=False, Parameters=False, Doc=False): self.t = Time

    0热度

    1回答

    想知道是否有人有一个很好的方法来动态地检查一个类的函数类型,然后动态地将修饰器修补到某些函数上。我正在尝试这个,但没有得到我期望的结果。通过课堂上的方法走路似乎正在工作,但做猴子补丁本身似乎失败了。任何想法非常感谢! def decorator(callable): pass class Test(object): def foo1(self): return

    4热度

    2回答

    给定函数foobar如何检查它是否为Tornado预期的发电机? In [1]: from tornado import gen In [2]: @gen.coroutine ...: def foobar(): ...: print 'boom' ...: 我无法找到任何属性,这可能表明,它是由一个gen.coroutine

    0热度

    1回答

    装饰代码: from functools import wraps def wrap2(func): @wraps(func) def wrap(*args, **kwargs): return func(*args, **kwargs) return wrap 测试功能: @wrap2 def f2(x='', y=''): retur