的一种方式,以确保一个方法被称为与特定kwarg会是这样:Python:需要kwarg,哪个异常提升?
def mymethod(self, *args, **kwargs):
assert "required_field" in kwargs
提高的AssertionError
似乎并不像最合适的事情。是否有一个内置的异常协议来处理这个错误信息?
更多信息:有第三方子类问题,其中* args和** kwargs kinda'需要通过,因此使“required_field”成为位置参数并不是一个好的选择。
我认为标准的事情是不要让它成为'默认参数'。 – mgilson
已有位置参数,我不想混淆。 –
更一般地说,还有一些情况是kwargs可以接受大量的密钥,只有当关于其他关键字参数的存在或值满足特定条件时才需要一些密钥。 –