Construya arrays rápidamente con comprehensions
Lea y dé forma a la entrada en una línea
Construya arrays rápidamente con comprehensions es una lección gratuita de Competitive Programming Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Competitive Programming Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Competitive Programming Academy incluye 4 lecciones en total.
Construir listas en una línea
Una comprensión de listas construye una lista a partir de un bucle en una sola expresión. Es más breve, rápida y habitual en las competiciones para dar forma a los datos.
squares = [i * i for i in range(5)]La estructura básica
El patrón es [expr for item in iterable]. La expresión de la izquierda se ejecuta una vez por cada elemento que produce el bucle.
doubles = [x * 2 for x in nums]Leer una línea de enteros
La línea más habitual en las competiciones: divida la entrada y convierta cada token. Esto convierte texto en enteros en un único paso fácil de leer.
nums = [int(x) for x in input().split()]map() hace el mismo trabajo
map(int, ...) aplica int a cada token. Envuélvalo en list(...) para materializar los valores y reutilizarlos.
nums = list(map(int, input().split()))Filtrar durante la construcción
Añada una condición if al final para conservar solo los elementos que la cumplan. Aquí, solo sobreviven los números pares durante la construcción.
evens = [x for x in nums if x % 2 == 0]Transformar y filtrar a la vez
Puede transformar y filtrar al mismo tiempo: cambie los elementos conservados a la izquierda mientras los filtra con el if final.
out = [x * x for x in nums if x > 0]Crear un array lleno de ceros
¿Necesita un array de tamaño fijo? [0] * n crea n ceros al instante, perfecto para contadores y tablas de DP.
dp = [0] * nCuidado con las listas internas repetidas
Use una comprensión para crear una cuadrícula 2D. [[0] * c for _ in range(r)] crea filas independientes, mientras que [[0] * c] * r comparte una sola fila.
grid = [[0] * c for _ in range(r)]Indexar con enumerate
Cuando también necesite las posiciones, recorra la colección con enumerate para obtener en cada paso tanto el índice como el valor de forma clara.
pairs = [(i, v) for i, v in enumerate(nums)]Leer una matriz completa
Combine la lectura y el bucle para obtener de una vez r filas de números y construir la cuadrícula completa en solo dos líneas.
grid = [list(map(int, input().split()))
for _ in range(r)]Versiones para conjuntos y diccionarios
La misma sintaxis permite crear sets y dicts: use llaves. {x for x in nums} elimina duplicados, y los pares clave:valor crean un mapa.
seen = {x for x in nums}Comprobación rápida
Elija la expresión idiomática para leer una línea de enteros separados por espacios.
Repaso: construir rápidamente
Ahora puede construir, filtrar y cambiar la forma de los arrays en una sola línea, además de leer matrices completas rápidamente. Las comprensiones mantienen breve y libre de errores el análisis de la entrada. 💡
Preguntas frecuentes
¿La lección «Construya arrays rápidamente con comprehensions» es gratis?
Sí — el texto completo de «Construya arrays rápidamente con comprehensions» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Competitive Programming Academy, actualiza a CoddyKit PRO. El curso de Competitive Programming Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Construya arrays rápidamente con comprehensions»?
Lea y dé forma a la entrada en una línea Practicas Competitive Programming Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Competitive Programming Academy?
No se requiere experiencia previa. Competitive Programming Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Construya arrays rápidamente con comprehensions»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Competitive Programming Academy?
Sí. Cada lección de Competitive Programming Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Listas, indexación y slicing para CP
- Construya arrays rápidamente con comprehensions
- Min, max, sum y totales acumulados
- Encuentre el índice, no solo el valor