by Anonymous » 15 May 2025, 22:09
Es gibt zwei Klassen und
ich möchte Element einwickeln.
Code: Select all
class Foo:
_count = 0
def foo(self, param2):
self._count += param2
class Bar:
_collection = [Foo(), Foo(), Foo()]
def bar(self, param1, param2):
for item in self._collection:
wrapped_function = wrapper(item.foo, param1)
wrapped_function(param2)
def wrapper(func, param1):
# some database call or whatever
cache = {param1: 'param_value'}
def _wrapper(*args, **kwargs):
# access value to read
print(cache[param1])
return func(*args, **kwargs)
return _wrapper
bar = Bar()
bar.bar(1, 2)
Es kann erreicht werden, wenn Wrapper keine Parameter enthalten und als einfacher Dekorator verwendet wurde, aber ich muss einen Param1 darin übergeben, obwohl es immer dasselbe ist. Erziele es.>
Es gibt zwei Klassen und [url=viewtopic.php?t=14917]ich möchte[/url] Element einwickeln.[code]class Foo:
_count = 0
def foo(self, param2):
self._count += param2
class Bar:
_collection = [Foo(), Foo(), Foo()]
def bar(self, param1, param2):
for item in self._collection:
wrapped_function = wrapper(item.foo, param1)
wrapped_function(param2)
def wrapper(func, param1):
# some database call or whatever
cache = {param1: 'param_value'}
def _wrapper(*args, **kwargs):
# access value to read
print(cache[param1])
return func(*args, **kwargs)
return _wrapper
bar = Bar()
bar.bar(1, 2)
[/code]
Es kann erreicht werden, wenn Wrapper keine Parameter enthalten und als einfacher Dekorator verwendet wurde, aber ich muss einen Param1 darin übergeben, obwohl es immer dasselbe ist. Erziele es.>