# **dict(a=1,b=2) # SyntaxError: invalid syntax # a=dict(a=1,b=2) # **a # SyntaxError: invalid syntax # a={'a':1,'b':2} # **a # SyntaxError: invalid syntax
打散是和字典连用的,但是直接打散是会报错的
打散是将字典{'a':1}打散成a=1的形式
聚合则相反
def foo(**kwargs): print(kwargs) foo(**{'a':1,'b':2})
结果是{'a':1,'b':2}
def foo(**kwargs): print(kwargs) foo(**{'a':1,'b':2})结果是{'a':1}
这个是聚合
return cls(**res[0])
打散只有在使用关键字参数的函数或者类里才能使用
@classmethod def select_one(cls,**kwargs): if kwargs: key=list(kwargs.keys())[0]关键字参数传入后,聚合变成字典,取出字典中的所有keys转成列表形式,并取出第一个值