W naszej wewnętrznej bazie kodów znajduje się dużo kodu, który wywołuje nasze biblioteki wewnętrznie - biblioteki te często mają wiele argumentów (myśl matplotlib), a nasz kod często wykonuje tylko określone zadanie i po prostu przekazuje **kwargskolejną wywoływaną funkcję.
Na przykład:
def our_method(dataframe, **kwargs):
result = do_something_with_data(dataframe)
external_module.draw(result, **kwargs)
Chociaż **kwargsuniemożliwia nam powtarzanie wszystkich parametrów w naszej deklaracji metody, powoduje również, że niezwykle nieprzejrzyste są argumenty, które są prawidłowe podczas wywoływania our_method- muszę wiedzieć, która metoda jest wywoływana, czego często nie chcę wiedzieć.
Jakie jest twoje zdanie?