Rendimiento de Python

Python Yield



El rendimiento es una palabra clave incorporada de Python que devuelve los valores de una función. La ejecución de la función no finaliza. Más bien, devuelve el valor al llamador y mantiene el estado de ejecución de la función. La ejecución de la función se reanuda desde la última declaración de rendimiento. El rendimiento nos permite producir una secuencia de valores en lugar de un valor. Se utiliza dentro de un cuerpo funcional. La función que contiene una declaración de rendimiento se conoce como función generadora.







Hay varias ventajas para producir palabras clave. Por ejemplo, controla la asignación de memoria y guarda el estado de la variable local. Sin embargo, aumenta la complejidad del código.



Este artículo explica el uso de la palabra clave yield con ejemplos.



Sintaxis del rendimiento

La sintaxis de rendimiento es simple y directa. El rendimiento se inicia con la palabra clave yield y la sintaxis de la siguiente manera:





producirvalor

Ejemplos de

Ahora, veamos ejemplos para comprender el uso y el funcionamiento de las declaraciones de rendimiento. Tradicionalmente, la palabra clave return termina la ejecución del programa y devuelve un valor al final, mientras que yield devuelve la secuencia de valores. No almacena el valor en la memoria y devuelve el valor a la persona que llama en tiempo de ejecución. En el siguiente ejemplo, se define una función de generador para determinar el año bisiesto. Un salto es ese año cuando divisible por cuatro devuelve cero como resto. La palabra clave yield devuelve el valor del año bisiesto a la persona que llama. Como obtendrá el valor de año bisiesto, pausará la ejecución del programa, devolverá el valor y luego reanudará la ejecución desde donde se detuvo.

#declaración de un generador para determinar el año bisiesto
defleapfunc(mi lista):
porIenmi lista:
si(I%4==0):
#utilizando rendimiento
producirI
#declarando la lista de años
lista_año=[2010,2011,2012,2016,2020,2024]
impresión('Impresión de los valores de los años bisiestos')
porxenleapfunc(lista_año):
impresión(x)

Producción



La salida muestra la serie de años bisiestos.

Veamos otro ejemplo en el que la función del generador produce varios números y cadenas.

# declarando una función generadora
defmyfunc():
producir 'Marcos'
producir 'John'
producir 'Taylor'
producir 'Iván'
producir 10
producir 20
producir 30
producir 40
producir 50
# llamar e iterar a través de la función del generador
porIenmyfunc():
#impresión de valores
impresión(I)

Producción

Implementemos una función generadora para calcular e imprimir el valor del cubo de la secuencia de números. Estamos generando los valores del cubo de 1 a 30.

#declarar una función generadora para calcular el valor del cubo
defcalcube():
horas=1
#el bucle infinito while
tiempo Cierto:
#cubo de cálculo
producirval * val * val
#aumentar el valor en 1
horas=val +1
impresión('Los valores del cubo son:')
# llamar a la función del generador
porIencalcube():
siI>30:
rotura
impresión(I)

Producción

La salida muestra el valor del cubo menor que 30.

Conclusión

Yield es una palabra clave incorporada de Python que no termina la ejecución del programa y genera una serie de valores. En comparación con la palabra clave return, la palabra clave yield produce múltiples valores y regresa a la persona que llama. Este artículo explica el rendimiento de Python con ejemplos.