Один из способов гарантировать, что метод вызывается с конкретным kwarg, будет выглядеть следующим образом:
def mymethod(self, *args, **kwargs):
assert "required_field" in kwargs
Поднятие AssertionError
не похоже на наиболее подходящую вещь. Есть ли согласованное встроенное исключение для обработки этого сообщения с хорошим сообщением?
Дополнительная информация: есть проблемы с подклассом сторонних производителей, в которых необходимо передать аргументы * args и ** kwargs kinda, поэтому создание "обязательного поля" позиционного аргумента на самом деле не является хорошим вариантом.