python-decorators相关内容

FastAPI:如何在返回后记录POST方法的返回值?

我正在开发我的第一个REST API,如果我错过了一些基本的东西,请提前道歉。无论如何,我有一个函数可以从另一个服务器获取一个json请求,对其进行处理(根据数据进行预测),然后返回另一个带有结果的json。我希望在服务器的本地磁盘上保留对此端点的所有请求及其结果的日志,以用于评估和重新培训模型。然而,为了最大限度地减少将结果返回给用户的延迟,我希望首先返回响应数据,然后将其写入本地磁盘。我并不清 ..
发布时间:2022-08-19 11:45:03 其他开发

线程装饰器[Python]

我正在尝试使用python套接字和线程库创建一个简单的程序。我想使用一个装饰器自动执行以下步骤: t = threading.Thread(target=function, args=(arg1, arg2)) t.start() 程序是使用OOP构建的,所以我在Main中定义了一个子类来包含所有的修饰符(我在本文中读到了这个方法:https://medium.com/@vadimpus ..

Python中的修饰函数始终返回NONE

我对Python中的装饰符有一个奇怪的问题。基本上,我试图包装一个函数,这样它就可以为每个请求创建和删除游标(不要问--这只是一个示例,对于演示这个问题很有用!)我还有其他打算)。 这里有一个示例: class DB(object): """Our DB methods and connections""" def __init__(self): se ..
发布时间:2022-04-07 13:02:49 Python

变量可以修饰吗?

在Python中修饰函数或方法非常棒。 @dec2 @dec1 def func(arg1, arg2, ...): pass #This is equivalent to: def func(arg1, arg2, ...): pass func = dec2(dec1(func)) 我想知道是否可以在python中修饰变量。 @capitalize @stri ..
发布时间:2022-04-07 12:57:22 Python

加载模块以调用其修饰器

我有一个由多个模块组成的程序字符串,其中一个模块指定各自的Web应用程序处理程序,一个模块指定各自的路由器。 我使用的库可以找到here。 摘自webapp.service(有更多这样的模块): from webapp.router import ROUTER @ROUTER.route('/service/[id:int]') class ServicePermissions(A ..
发布时间:2022-03-31 20:58:21 Python

如何在python中做一个条件装饰器

是否可以有条件地装饰函数.例如,我想用定时器函数(timeit)装饰函数foo()只有doing_performance_analysis是True(见伪代码下面). 如果做性能分析:@timeit定义 foo():"""做某事,timeit 函数将返回它所花费的时间"""时间.sleep(2)别的:定义 foo():时间.sleep(2) 解决方案 装饰器是简单的可调用函数,它返回一个替换 ..
发布时间:2022-01-20 23:16:36 Python

装饰器设置函数的属性

我希望仅当登录用户具有所需的权限级别时才能执行不同的功能. 为了让我的生活更简单,我想使用装饰器.下面我尝试在 'decorated' 函数上设置属性 permission - 如下所示. def 权限(permission_required):def 包装器(函数):def 内部(*args,**kwargs):setattr(函数,'permission_required',permi ..

如何使用装饰器将变量注入范围?

[免责声明:可能有更多的 Pythonic 方法可以做我想做的事,但我想知道这里的 Python 作用域是如何工作的] 我试图找到一种方法来制作一个装饰器,它可以将名称注入另一个函数的范围内(这样名称不会泄漏到装饰器的范围之外).例如,如果我有一个函数说要打印一个尚未定义的名为 var 的变量,我想在调用它的装饰器中定义它.这是一个中断的示例: c = '消息'定义装饰器工厂(值):def ..
发布时间:2022-01-04 11:30:11 Python

Python @property 装饰器不起作用

有人能发现这个@property 装饰器的问题吗?我似乎无法让它正确断言.我确定我做错了一些非常简单的事情,但是谁能把我疲惫的眼睛指向正确的方向? A 类:def __init__(self):自我.a = 0self._b = 0@财产定义 b(自我):回归自我.b@b.getter定义 b(自我):如果 self._b 是 None:返回 0返回 self._b@b.setterdef b( ..
发布时间:2022-01-02 18:45:54 Python

列出 Python 类中的 @property 装饰方法

是否可以获得类中所有 @property 修饰方法的列表?如果是这样怎么办? 示例: class MyClass(object):@财产def foo(self):经过@财产定义栏(自我):经过 我如何从这个类中获取['foo', 'bar']? 解决方案 任何用 property 修饰的东西都会在你的类命名空间中留下一个专用对象.查看类的__dict__,或者使用vars()函 ..
发布时间:2022-01-02 18:36:46 Python

“at"是什么意思?(@) 符号在 Python 中做什么?

我正在查看一些使用 @ 符号的 Python 代码,但我不知道它的作用.我也不知道要搜索什么,因为在包含 @ 符号时搜索 Python 文档或 Google 不会返回相关结果. 解决方案 行首的 @ 符号用于类、函数和方法装饰器. 在此处阅读更多信息: PEP 318:装饰器 Python 装饰器 您将遇到的最常见的 Python 装饰器是: @propert ..
发布时间:2021-12-29 18:53:57 Python