- 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
Listas por comprensión en Python: creación y optimización de listas
Clase 18 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
Fe de erratas
Durante la clase, en una parte del contenido escribimos mal la fórmula para convertir de grados Celsius a Fahrenheit.
Error:
°F = (°C × 1.8) * 32
Corrección:
°F = (°C × 1.8) + 32
El signo correcto es +, no *. Gracias por la comprensión y nos disculpamos por la confusión. 🌡️✨
Una Comprehension List es una forma concisa de crear listas en Python, pues permite generar listas nuevas transformando cada elemento de una colección existente o creando elementos a partir de un rango. La sintaxis es compacta y directa, lo que facilita la comprensión del propósito de tu código de un vistazo.
La estructura básica de una Comprehension List es:
[expresión for elemento in iterable if condición]
Que se traduce a: “Crea una nueva lista evaluando nueva_expresión para cada elemento en el iterable.”
Ejercicios:
-
Doble de los Números
Dada una lista de números[1, 2, 3, 4, 5], crea una nueva lista que contenga el doble de cada número usando una List Comprehension. -
Filtrar y Transformar en un Solo Paso
Tienes una lista de palabras["sol", "mar", "montaña", "rio", "estrella"]y quieres obtener una nueva lista con las palabras que tengan más de 3 letras y estén en mayúsculas. -
Crear un Diccionario con List Comprehension
Tienes dos listas, una de claves["nombre", "edad", "ocupación"]y otra de valores["Juan", 30, "Ingeniero"]. Crea un diccionario combinando ambas listas usando una List Comprehension. -
Anidación de List Comprehensions
Dada una lista de listas (una matriz):pythonCopiar código matriz = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]Calcula la matriz traspuesta utilizando una List Comprehension anidada.
-
Extraer Información de una Lista de Diccionarios
Dada una lista de diccionarios que representan personas:pythonCopiar código personas = [ {"nombre": "Juan", "edad": 25, "ciudad": "Madrid"}, {"nombre": "Ana", "edad": 32, "ciudad": "Madrid"}, {"nombre": "Pedro", "edad": 35, "ciudad": "Barcelona"}, {"nombre": "Laura", "edad": 40, "ciudad": "Madrid"} ]Extrae una lista de nombres de personas que viven en “Madrid” y tienen más de 30 años.
-
List Comprehension con un
else
Dada una lista de números[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], crea una nueva lista multiplicando por 2 los números pares y dejando los impares como están.
Soluciones
-
Doble de los Números
pythonCopiar código numeros = [1, 2, 3, 4, 5] dobles = [x * 2 for x in numeros] print("Dobles:", dobles) -
Filtrar y Transformar en un Solo Paso
pythonCopiar código palabras = ["sol", "mar", "montaña", "rio", "estrella"] palabras_filtradas = [palabra.upper() for palabra in palabras if len(palabra) > 3] print("Palabras filtradas y en mayúsculas:", palabras_filtradas) -
Crear un Diccionario con List Comprehension
pythonCopiar código claves = ["nombre", "edad", "ocupación"] valores = ["Juan", 30, "Ingeniero"] diccionario = {claves[i]: valores[i] for i in range(len(claves))} print("Diccionario creado:", diccionario) -
Anidación de List Comprehensions
pythonCopiar código matriz = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] transpuesta_comprehension = [[fila[i] for fila in matriz] for i in range(len(matriz[0]))] print("Transpuesta con List Comprehension:", transpuesta_comprehension) -
Extraer Información de una Lista de Diccionarios
pythonCopiar código personas = [ {"nombre": "Juan", "edad": 25, "ciudad": "Madrid"}, {"nombre": "Ana", "edad": 32, "ciudad": "Madrid"}, {"nombre": "Pedro", "edad": 35, "ciudad": "Barcelona"}, {"nombre": "Laura", "edad": 40, "ciudad": "Madrid"} ] nombres_madrid = [persona["nombre"] for persona in personas if persona["ciudad"] == "Madrid" and persona["edad"] > 30] print("Nombres de personas en Madrid mayores de 30 años:", nombres_madrid -
List Comprehension con un
elsepythonCopiar código numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] transformados = [x * 2 if x % 2 == 0 else x for x in numeros] print("Números transformados:", transformados)
Las Comprehension Lists en Python son una herramienta poderosa y versátil que permite escribir código más limpio y eficiente. Al dominar su uso, puedes realizar transformaciones y filtrados de datos de manera más concisa, lo que no solo mejora la legibilidad del código, sino que también puede optimizar su rendimiento.
Practicar con ejemplos como los presentados te ayudará a integrar esta técnica en tus proyectos de programación diaria, facilitando la manipulación de colecciones de datos de manera elegante y efectiva.