Currying is a powerful technique in functional programming languages like Haskell. This decorator allows a function to be automatically curried by supplying fewer arguments than required.
pip3 install autocurry
from autocurry import autocurry
@autocurry
def find_by_key_with_connection(db_connection, key):
...
find_by_key = find_by_key_with_connection(some_connection)
value1 = find_by_key('my_key')
value2 = find_by_key('your_key')