generadores, clases dec, , rawinput Flashcards

1
Q

generadores:

A

Python son una característica poderosa! Son funciones especiales que permiten pausar y reanudar su ejecución, lo que ahorra memoria y tiempo. Pueden utilizarse para generar secuencias de valores de manera eficiente, como en bucles for.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
  • Generador simple de números pares:
A

def pares(maximo):
num = 0
while num < maximo:
yield num
num += 2

for n in pares(10):
print(n)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
  • Generador de números Fibonacci:
A

def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b

for num in fibonacci(10):
print(num)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

puedes utilizar la declaración yield en lugar de return dentro de una función para crear un generador? ej?

A

def funcion_generadora(cajas):
for caja in cajas:
if caja == “Blanco”:
yield “azul”
elif caja == “Rojo”:
yield caja

cajas = [“Blanco”, “Rojo”, “Negro”]
generador = funcion_generadora(cajas)

for caja_pintada in generador:
print(caja_pintada)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  • Clases decoradas
A

Los decoradores son funciones que toman otra función o clase y la modifican de alguna manera.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

ej clase decoradoa

A

def decorador(clase):
class ClaseDecorada(clase):
def nuevo_metodo(self):
print(“¡Este es un nuevo método decorado!”)

return ClaseDecorada

@decorador
class MiClase:
def metodo_original(self):
print(“Este es el método original.”)

objeto = MiClase()
objeto.metodo_original()
objeto.nuevo_metodo()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

que hace miclase con el decorador

A

el decorador decorador toma la clase MiClase y crea una nueva clase ClaseDecorada que hereda de MiClase. Se agrega un nuevo método a la clase decorada. Luego, al aplicar @decorador encima de la definición de MiClase, estás esencialmente utilizando el decorador para modificar MiClase.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Captura de excepciones genéricas:

A

Puedes capturar excepciones de manera más general utilizando Exception. Sin embargo, es una buena práctica ser específico sobre las excepciones que manejas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

excepción ejemplo

A

try:
archivo = open(“archivo.txt”, “r”)
except Exception as e:
print(f”Ocurrió un error: {e}”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

usos de exception:

A

-evitar que el programa se detenga abruptamente debido a un error no anticipado

-ocultar información importante sobre el problema que está ocurriendo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

La parte as e en except Exception as e se utiliza para

A

para capturar la instancia de la excepción que ha ocurrido. Permite acceder a información más detallada sobre la excepción y, en algunos casos, puede ser útil para depurar o proporcionar mensajes de error más informativos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Cuando se captura una excepción utilizando as, se crea una variable llamada :____ que _____

A

e (en este caso, puedes usar cualquier nombre válido de variable)

referencia la instancia de la excepción.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q
  • Entrada Estándar Raw input:

era utilizada para obtener una entrada de texto sin procesar del usuario desde la línea de comandos.

como se renombre?

A

input() para que la entrada se procesara automáticamente como una cadena (string).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

ej raw input vs input

A

Python 2 (utilizando raw_input()):
entrada = raw_input(“Ingresa un texto: “)
print(“Ingresaste:”, entrada)
Python 3 (utilizando input()):
entrada = input(“Ingresa un texto: “)
print(“Ingresaste:”, entrada)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly