Преобразования в Python dict на kwargs?
Я хочу построить запрос для sunburnt (интерфейс solr), используя наследование классов и, следовательно, добавляя пары ключ - значение вместе. Интерфейс sunburnt принимает аргументы ключевых слов. Как я могу преобразовать dict ({'type':'Event'}) в аргументы ключевого слова (type='Event')?
2 ответов
использовать двойной звезды (Он же двойной восклицательный знак?) оператор:
func(**{'type':'Event'})
эквивалентно
func(type='Event')
** оператор был бы полезен здесь.
** оператор распакует элементы dict и таким образом **{'type':'Event'} будет рассматриваться как type='Event'
func(**{'type':'Event'}) это то же самое, что func(type='Event') i.e элементы dict будут преобразованы в keyword arguments.
к твоему сведению!--12-->
* распакует элементы списка и они будут рассматриваться как positional arguments.
func(*['one', 'two']) это то же самое, что func('one', 'two')