Funciones que aceptan pares de valores clave de longitud variable como argumentos

Para pasar un par clave-valor de longitud variable como argumento a una función, Python proporciona una característica llamada ** kwargs .
kwarg significa argumentos de palabras clave. Demuestra ser una solución eficiente cuando se quiere tratar con argumentos con nombre en su función.

Sintaxis:

def functionName(**anything):
    statement(s)

Nota: agregar ‘ ** ‘ a cualquier término lo convierte en un parámetro kwarg. Acepta palabras clave como argumentos. 

Ejemplo 1: 

Python3

# using kwargs
# in functions
 
 
def printKwargs(**kwargs):
    print(kwargs)
 
 
# driver code
if __name__ == "__main__":
    printKwargs(Argument_1='gfg', Argument_2='GFG')

Producción:

{'Argument_1': 'gfg', 'Argument_2': 'GFG'}

Ejemplo #2:

Python3

# using kwargs
# in functions
 
 
def printValues(**kwargs):
    for key, value in kwargs.items():
        print("The value of {} is {}".format(key, value))
 
 
# driver code
if __name__ == '__main__':
    printValues(abbreviation="GFG", full_name="geeksforgeeks")

Producción:

The value of abbreviation is GFG
The value of full_name is geeksforgeeks

Ejemplo #3:

Python3

# using kwargs
# in functions
# to concatenate
 
 
def concatenate(**arguments):
    # initialising empty string
    final_str = ""
     
    # Iterating over the Python kwargs
    # dictionary
    for elements in arguments.values():
        final_str += elements
    return final_str
 
 
# driver code
if __name__ == '__main__':
    print(concatenate(a="g", b="F", c="g"))

Producción:

gFg

Ejemplo #4:

Python3

# using kwargs
# to multiply
 
 
def multiply(**kwargs):
   
    # initialising answer
    answer = 1
     
    # Iterating over the Python kwargs
    # dictionary
    for elements in kwargs.values():
        answer *= elements
    return answer
 
 
# driver code
if __name__ == '__main__':
    print(multiply(a=1, b=2, c=3, d=4, e=5))

Producción:

120

Publicación traducida automáticamente

Artículo escrito por technikue20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *