假设我有一些功能, f
def f (a=None):
print a
Run Code Online (Sandbox Code Playgroud)
现在,如果我有一本字典dct = {"a":"Foo"},我可以调用f(**dct)并Foo打印结果.
但是,假设我有一本字典dct2 = {"a":"Foo", "b":"Bar"}.如果我打电话给f(**dct2)我一个
TypeError: f() got an unexpected keyword argument 'b'
Run Code Online (Sandbox Code Playgroud)
很公平.但是,无论如何,在f调用它的定义或调用它时,告诉python只是忽略任何不是参数名称的键?优选的是允许指定默认值的方法.