¿Convertir Python dict a kwargs?

Resuelto teaforthecat asked hace 13 años • 3 respuestas

Quiero crear una consulta para sunburnt (interfaz solr) usando la herencia de clases y, por lo tanto, agregando pares clave-valor. La interfaz quemada por el sol toma argumentos de palabras clave. ¿ Cómo puedo transformar un dict ( {'type':'Event'}) en argumentos de palabras clave ( type='Event')?


Ver también: ¿Qué significan ** (doble estrella/asterisco) y * (estrella/asterisco) en una llamada de función? - la pregunta correspondiente para las personas que se topan con la sintaxis y se sienten confundidas por ella.

teaforthecat avatar Apr 19 '11 07:04 teaforthecat
Aceptado

Utilice el operador de doble estrella (¿también conocido como doble símbolo? ):

func(**{'type':'Event'})

es equivalente a

func(type='Event')
unutbu avatar Apr 19 '2011 00:04 unutbu

**El operador sería útil aquí.

**El operador descomprimirá los elementos dict y, por lo tanto, **{'type':'Event'}será tratado comotype='Event'

func(**{'type':'Event'})es lo mismo que, func(type='Event')es decir, los elementos dict se convertirían a keyword arguments.

Para su información

*desempaquetará los elementos de la lista y serán tratados como positional arguments.

func(*['one', 'two'])es igual quefunc('one', 'two')

Vishvajit Pathak avatar Sep 08 '2018 19:09 Vishvajit Pathak