Desempaquetar Operador ** en Python

Manav Narula 21 junio 2023
  1. Usa el operador ** en Python
  2. Conclusión
Desempaquetar Operador ** en Python

Python proporciona los operadores ** y * que se pueden usar para desempaquetar valores de estructuras de datos como diccionarios, tuplas, listas y más.

Desempaquetar nos permite imprimir los elementos del objeto o cargarlos en otros objetos. El operador ** se puede utilizar para desempaquetar valores de un diccionario como pares clave-valor.

Este tutorial demostrará el uso del operador ** en Python.

Usa el operador ** en Python

Podemos desempaquetar pares clave-valor de un diccionario usando el **, y esta técnica de desempaquetado puede realizar varias operaciones. Discutiremos muchas de estas operaciones a continuación.

Podemos usar esto para fusionar diccionarios. Podemos crear un diccionario y descomprimir los pares de este diccionario en otro.

Esto fusionará los dos diccionarios. Vea el código a continuación.

dict1 = {"x": 24, "y": 25}
dict2 = {"z": 26, **dict1}
print(dict2)

Producción :

{'z': 26, 'x': 24, 'y': 25}

En el ejemplo anterior, creamos un diccionario dict1 y desempaquetamos los pares usando el operador ** en el diccionario dict2, que fusiona los pares en el diccionario dict2.

El uso más importante del operador ** se presenta al enviar múltiples argumentos a una función. Uno debe haber visto el uso de la palabra clave kwargs en las definiciones de funciones.

Usamos esto en una definición de función, que se considera una notación estándar cuando no conocemos los parámetros totales de la función durante una llamada de función.

Podemos enviar múltiples parámetros a una función usando la notación **kwargs en la definición de la función.

Tenga en cuenta que la palabra clave kwargs se considera una notación estándar y puede reemplazarse por cualquier nombre de variable lógica. Lo importante aquí es el operador **.

Este operador desempaquetará los parámetros recibidos cuando se proporcionen varios parámetros de palabras clave durante una llamada de función. Recuerde que esto funciona con parámetros de palabras clave porque desempaquetará los valores como pares clave-valor de un diccionario, y cada parámetro tiene una palabra clave.

Quedará claro mediante el uso de un ejemplo. Vea el código a continuación.

def sample(a, **kwargs):
    print("Keyword Parameters using **")
    for i in kwargs:
        print(i, kwargs[i])

    print("Positional Parameter value", a)


sample(7, x=24, y=25, z=26)

Producción :

Keyword Parameters using **
x 24
y 25
z 26
Positional Parameter value 7

En el ejemplo anterior, enviamos múltiples parámetros de palabras clave a la función. Se desempaquetan en la llamada de función utilizando el operador ** y se utilizan según sea necesario.

El operador * en Python también se puede usar para desempaquetar valores de listas, tuplas y más. Similar a lo que discutimos, se puede usar para enviar múltiples parámetros posicionales durante una llamada de función.

Conclusión

Este tutorial demostró el uso del operador ** en Python. Demostramos cómo se usa para desempaquetar valores de un diccionario en Python.

Esta característica permite que se use en varias operaciones, como combinar diccionarios, enviar múltiples parámetros de palabras clave y más. También discutimos el operador * que puede desempaquetar valores de una lista, tupla y más de manera similar.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Operator