TGViewer
Learn Python Coding Learn Python Coding @pythonre · 40.7K subscribers
Post #9648 1.57K
# How to Implement a Decorator with Parameters Using a Class in Python

You can create a parameterized decorator in Python by using a class that implements the __call__ method. The class acts as the decorator factory, where the __init__ method stores the parameters, call__call__ method applies the decorator logic to the target function.

## Example Implementation

class my_decorator:
def __init__(self, param):
self.param = param

def __call__(self, func):
def wrapper(*args, **kwargs):
print(f"Decorator parameter: {self.param}")
return func(*args, **kwargs)
return wrapper

@my_decorator("Hello")
def say_hello(name):
print(f"Hello, {name}!")

say_hello("World")

## Explanation

1. Class Definition: Define a class that will serve as the decoratorinit.
2. **__init__**: Store the parameters passed to the decoracall.
3. **__call__**: Make the instance callable. This method receives the function being decorated and returns the wrappWrapperrapper**: The inner function executes the actual decorator logic before or after calling the original function.
  • ❤ 6
More from @pythonre
  1. Oct 7, 2026A distinctive bot for subscribing to courses on the most popular educational platforms acr…
  2. Oct 7, 2026Python Lists: A Quick Reference 🐍 * Definition: Lists are ordered, mutable collections th…
  3. Oct 7, 2026📱 270 tools for Python developers The repository contains: 🫡 Linters and formatters; 🫡…
  4. Oct 7, 2026Hands On Python Data Science - Data Science Bootcamp Master Python for Data Science with R…
  5. Oct 6, 2026Post #9851
  6. Oct 6, 2026Python For Beginners Course In-Depth Python: A Comprehensive Introduction to Fundamental P…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →