Если вы знаете или ожидаете, что save
будет пройдено, укажите его напрямую.Вероятно, вы имеете в виду значение по умолчанию, поэтому Бернхард упоминает в комментарии:
def plot_performance(list_in, save=False):
if save:
put.save_fig(...)
Если вы действительно использовали kwargs
, используйте его get
метод.
def plot_performance(list_in, **kwargs):
save = kwargs.get('save', False)
if save:
...
Однако, kwargs
обычно используется, когда вам нужно принять произвольные аргументы ключевых слов, которые вам не обязательно известны или вам небезразличны, чтобы передать их другой функции.Пример использования переопределенного метода:
class Child(Base):
def foo(self, x, **kwargs):
# do something with x
# Pass any other keyword args on to another class's definition
# of foo.
super().foo(**kwargs)
Реже его можно использовать для принятия произвольных аргументов ключевого слова без необходимости определять их заранее:
class Namespace:
def __init__(self, **kwargs):
self.values = dict()
for kw in kwargs:
self.values[kw] = kwargs[kw]