pip install blinker
python
from blinker import signal
python
my_signal = signal('my_signal')
def handle_event(sender):
print(f'Received event from {sender}')
my_signal.connect(handle_event)
python
my_signal.send('sender1')
python
my_signal = signal('my_signal')
@my_signal.receiver
def handle_event(sender):
print(f'Received event from {sender}')
my_signal.send('sender1')
python
my_signal = signal('my_signal', doc='This is a signal for event handling')
def handle_event(sender, extra_param):
print(f'Received event from {sender}, with extra parameter: {extra_param}')
my_signal.connect(handle_event)
my_signal.send('sender1', extra_param='additional data')