Python 获取了一个意外的关键字参数

Python 获取了一个意外的关键字参数,python,typeerror,keyword-argument,Python,Typeerror,Keyword Argument,使用Kwargs从字典中解包元素。Intrepreter引发意外的关键字参数错误 def f (x, y, z) : return x + y * z y = lambda x, y, z : x+y+z print(f(**{ 'z' : 4 , 'x' : 1 , 'y' : 3 })) print(y(**{ 'z' : 4 , 'x' : 1 , 'y' : 3 })) print(f(**{ 'z' : 4 , "xx" : 1 , 'y' : 3 }))

使用Kwargs从字典中解包元素。Intrepreter引发意外的关键字参数错误

def f (x, y, z) : return x + y * z

y = lambda x, y, z : x+y+z

print(f(**{ 'z' : 4 , 'x' : 1 , 'y' : 3 }))

print(y(**{ 'z' : 4 , 'x' : 1 , 'y' : 3 }))

print(f(**{ 'z' : 4 , "xx" : 1 , 'y' : 3 }))

print(y(**{ 'z' : 4 , 'xx' : 1 , 'y' : 3 }))
错误消息:

13
8
Traceback (most recent call last):
  File "C:/Python39/test.py", line 8, in <module>
    print(f(**{ 'z' : 4 , "xx" : 1 , 'y' : 3 }))
TypeError: f() got an unexpected keyword argument 'xx'
13
8.
回溯(最近一次呼叫最后一次):
文件“C:/Python39/test.py”,第8行,在
打印(f(**{'z':4,“xx':1,'y':3}))
TypeError:f()获得意外的关键字参数“xx”

我想您可能混淆了位置参数和键控参数

解包字典时,字典键
xx
与名为
xx
但不存在的命名参数之间的python匹配

如果要解压位置参数,请使用
*[4,1,3]
,它将映射到
x=4,y=1,z=3