将Python dict转换为kwargs?

| 我想使用类继承构建针对sunburnt(solr接口)的查询,因此将键-值对加在一起。 sunburnt接口带有关键字参数。如何将字典
({\'type\':\'Event\'})
转换为关键字参数
(type=\'Event\')
已邀请:
使用双星运算符(又称双破折号?):
func(**{\'type\':\'Event\'})
相当于
func(type=\'Event\')
**
运算符在这里会有所帮助。
**
运算符将解开dict元素的包装,因此
**{\'type\':\'Event\'}
将被视为
type=\'Event\'
func(**{\'type\':\'Event\'})
func(type=\'Event\')
相同,即dict元素将转换为
keyword arguments
。 费耶
*
将解压缩列表元素,它们将被视为
positional arguments
func(*[\'one\', \'two\'])
func(\'one\', \'two\')
相同
这是一个完整的示例,显示了如何使用
**
运算符将字典中的值作为关键字参数传递。
>>> def f(x=2):
...     print(x)
... 
>>> new_x = {\'x\': 4}
>>> f()        #    default value x=2
2
>>> f(x=3)     #   explicit value x=3
3
>>> f(**new_x) # dictionary value x=4 
4

要回复问题请先登录注册