- 1

Fundamentos de Programación con Python para Principiantes
02:04 - 2

Instalación y Uso Básico de Python en Windows y Mac
08:10 - 3

Semántica y Sintaxis en Programación Python
10:15 - 4
Práctica: Te doy la bienvenida a los ejercicios interactivos
00:00 - 5

Manejo de Cadenas y Operaciones Básicas en Python
13:06 - 6

Tipos de Datos en Python: Enteros, Flotantes y Booleanos
07:22 - 7
Dominio de la función `print` en Python: usos y formatos avanzados
04:00 - 8

Operaciones matemáticas avanzadas en Python: módulo, potencia y más
11:01 - 9

Entrada de información y manejo de tipos de datos en Python
04:53
Iteradores y Generadores en Python: Uso Eficiente de Memoria
Clase 17 de 63 • Curso de Python
Contenido del curso
- 23

Programación Orientada a Objetos en Python: Clases y Métodos Básicos
14:11 - 24

Gestión de Biblioteca con Programación Orientada a Objetos
18:07 - 25

Herencia y Polimorfismo en Programación Orientada a Objetos
13:57 - 26

Programación Orientada a Objetos: Implementación de Clases y Herencia
13:10 - 27

Polimorfismo en Programación Orientada a Objetos
06:21 - 28

Herencia y Uso de la Función super() en Python
07:28 - 29
Programación Orientada a Objetos: Atributos, Métodos y `super()` en Python
05:06
- 37
Programación Avanzada en Python: POO, Excepciones y Proyectos
01:45 - 38

Escritura de Código Pytónico y Buenas Prácticas en Python
03:58 - 39

Comentarios y Docstrings: Buenas Prácticas en Programación
07:01 - 40

Tiempo de vida y alcance de variables en Python
14:11 - 41

Anotaciones de Tipo en Python para Código Más Legible
13:12 - 42

Validación de Tipos y Manejo de Excepciones en Python
13:05 - 43

Estructuras de Datos Avanzadas en Python: Collection y Enumeraciones
13:15
- 47

Uso de Métodos Mágicos en Python
06:47 - 48
Sobrecarga de Operadores en Python: Personaliza Comportamiento de Clases
04:18 - 49

Ejecutar scripts Python con `if __name__ == '__main__'`
05:42 - 50

Metaprogramación en Python: Métodos `__new__` y `__init__`
03:59 - 51

Uso de *args y **kwargs en funciones de Python
14:32 - 52

Métodos y Atributos Privados y Protegidos en Python
09:26 - 53

Uso de Property en Python: Getter, Setter y Eliminación de Atributos
07:56 - 54

Métodos estáticos y de clase en Python
07:46
Trabajar con iteradores y generadores en Python permite manejar grandes cantidades de datos de manera eficiente, sin necesidad de cargar todo en memoria.
¿Qué es un iterador y cómo se usa?
Un iterador en Python es un objeto que permite recorrer todos los elementos de una colección, uno a la vez, sin necesidad de usar índices. Para crear un iterador, se utiliza la función iter() y para obtener el siguiente elemento, se usa la función next(). Veamos un ejemplo:
# Crear una lista
lista = [1, 2, 3, 4]
# Obtener el iterador de la lista
iterador = iter(lista)
# Usar el iterador para obtener elementos
print(next(iterador)) # Imprime: 1
print(next(iterador)) # Imprime: 2
print(next(iterador)) # Imprime: 3
print(next(iterador)) # Imprime: 4
# Intentar obtener otro elemento después de finalizar la iteración
print(next(iterador)) # Esto generará una excepción StopIteration
Los iteradores también pueden recorrer cadenas de texto:
# Crear una cadena
texto = "hola mundo"
# Obtener el iterador de la cadena
iterador_texto = iter(texto)
# Iterar a través de la cadena
for caracter in iterador_texto:
print(caracter)
¿Cómo crear un iterador con range para números impares?
La función range se puede usar para crear un iterador que recorra números impares:
# Crear un iterador para números impares hasta 10
limite = 10
iterador_impares = iter(range(1, limite + 1, 2))
# Iterar a través de los números impares
for numero in iterador_impares:
print(numero)
Para cambiar a números pares, solo se debe modificar el inicio del rango:
# Crear un iterador para números pares hasta 10
iterador_pares = iter(range(0, limite + 1, 2))
# Iterar a través de los números pares
for numero in iterador_pares:
print(numero)
¿Qué es un generador y cómo se utiliza?
Un generador es una función que produce una secuencia de valores sobre los cuales se puede iterar, usando la palabra clave yield en lugar de return. Aquí hay un ejemplo básico:
def mi_generador():
yield 1
yield 2
yield 3
# Usar el generador
for valor in mi_generador():
print(valor)
¿Cómo crear un generador para la serie de Fibonacci?
La serie de Fibonacci es una secuencia donde cada número es la suma de los dos anteriores. Podemos crear un generador para producir esta serie:
def fibonacci(limite):
a, b = 0, 1
while a < limite:
yield a
a, b = b, a + b
# Usar el generador para la serie de Fibonacci hasta 10
for numero in fibonacci(10):
print(numero)