—
CURSO: PROGRAMACIÓN Y PENSAMIENTO COMPUTACIONAL CON PYTHON PARA REFUERZO ESCOLAR
Subtítulo: Aprende a programar desde cero con Python, el lenguaje más utilizado del mundo. Desarrolla tu pensamiento lógico, resuelve problemas como un ingeniero y crea tus primeros programas funcionales con un tutor que te guía línea a línea
—
FICHA TÉCNICA
Campo Descripción
Código MUN-PYT-001
Carga horaria total 45 horas (recomendado: 3 horas por semana durante 15 semanas)
Modalidad 100% textual guiada por DeepSeek AI, con ejercicios prácticos de programación, depuración guiada de errores, retos semanales de lógica y un proyecto final de aplicación
Nivel educativo Educación Secundaria Obligatoria (3.º y 4.º curso), Bachillerato, Formación Profesional (Informática, Ciencias, Ingeniería). Adaptable a cualquier persona que quiera iniciarse en la programación desde cero.
Riesgo Medio (frustración ante errores de sintaxis, tendencia a copiar soluciones sin comprender la lógica, dependencia de la IA para generar código sin entenderlo, posible sensación de que «la programación no es para mí» si no se maneja bien la curva de aprendizaje). El facilitador debe reforzar la mentalidad de crecimiento y la cultura del error como oportunidad de aprendizaje.
Dirigido a Estudiantes sin experiencia previa en programación que quieren aprender a programar desde cero, desarrollar pensamiento lógico y computacional, y sentar las bases para cursos más avanzados de desarrollo web, análisis de datos o inteligencia artificial.
Prerrequisito Saber usar un ordenador a nivel básico (explorador de archivos, navegador). Disponer de un ordenador con conexión a internet y un editor de código (IDLE de Python, Thonny, VS Code o Replit). No se requiere experiencia previa en programación ni matemáticas avanzadas. Autorización parental para menores de edad.
Corpus obligatorio cargado en DeepSeek Documentación oficial de Python 3 (adaptada a principiantes), Guía de buenas prácticas de código limpio, Ejercicios de lógica y patrones de programación, Lista de errores frecuentes para principiantes y sus soluciones, Guía de pensamiento computacional y diseño de algoritmos
Certificación Diploma de aprovechamiento en Programación y Pensamiento Computacional con Python. NO es una certificación profesional de desarrollo de software.
—
AVISO PARA EL ESTUDIANTE (LECTURA OBLIGATORIA)
Programar no es un talento con el que se nace. Es una habilidad que se entrena. Como montar en bici, al principio te caes; luego te parece fácil.
DeepSeek será tu profesor de código, tu revisor de errores y tu sparring de lógica. Pero:
· La IA no programa por ti. Te explicará los conceptos, revisará tu código y te ayudará a encontrar errores. Pero no escribirá tu proyecto final. El aprendizaje ocurre cuando escribes, te equivocas y corriges.
· Un error de sintaxis no significa que seas malo programando. Significa que el intérprete no ha entendido algo. Aprende a leer los mensajes de error: son pistas, no castigos.
· No copies y pegues código que no entiendas. Si la IA te sugiere una solución, pídele que te la explique línea por línea. Hasta que no puedas explicársela a otra persona, no es tu código.
· La lógica se entrena. Un programador no es alguien que sabe mucho de Python; es alguien que sabe descomponer un problema grande en trozos pequeños. Eso es lo que aprenderás aquí.
—
MAPA GENERAL DEL CURSO
Parte Título Horas Enfoque
I Pensar antes de teclear: lógica, algoritmos y tu primer «Hola, mundo» 12 h Pensamiento computacional, instalación, variables, tipos de datos, entrada/salida
II Decisiones y repeticiones: condicionales y bucles 14 h if/elif/else, while, for, depuración básica, patrones de bucle
III Organizando el código: funciones, listas y estructuras de datos 12 h Funciones propias, parámetros, listas, cadenas, introducción a diccionarios
IV Proyecto integrador: tu primera aplicación completa 7 h Diseño, desarrollo, depuración y presentación de un proyecto original
—
PARTE I: PENSAR ANTES DE TECLEAR. LÓGICA, ALGORITMOS Y TU PRIMER «HOLA, MUNDO»
(12 horas)
—
Capítulo 1. Bienvenido al gimnasio de tu cerebro lógico
(1 hora)
· Inciso 1.1. ¿Cómo funciona este curso? Tú piensas y escribes código; DeepSeek te guía. Sin miedo al error.
· Inciso 1.2. Conoce a tu tutor DeepSeek: cómo pedirle que revise tu razonamiento, que te explique un error o que te ayude a encontrar un bug sin darte la solución completa.
· Inciso 1.3. Tu diario de programador/a: fragmentos de código, errores superados, soluciones creativas.
· Inciso 1.4. Primera provocación: «DeepSeek, ¿por qué se dice que ‘aprender a programar te enseña a pensar’? Dame un ejemplo de cómo un problema cotidiano se puede abordar como un algoritmo.»
—
Capítulo 2. ¿Qué es programar? Descomposición, patrones, abstracción y algoritmos
(3 horas)
· Inciso 2.1. Los 4 pilares del pensamiento computacional:
1. Descomposición: Un problema grande se divide en trozos pequeños. Ejemplo: organizar un cumpleaños (invitar, comprar, cocinar, decorar).
2. Reconocimiento de patrones: ¿Esto se parece a algo que ya resolví?
3. Abstracción: Quedarse con lo importante y filtrar los detalles irrelevantes.
4. Diseño de algoritmos: Crear una secuencia de pasos para resolver el problema.
· Inciso 2.2. Diagramas de flujo descritos textualmente. Símbolos: inicio/fin (óvalo), proceso (rectángulo), decisión (rombo). Ejemplo: algoritmo para decidir si llevar paraguas.
· Inciso 2.3. Pseudocódigo: el borrador universal del programador. «DeepSeek, describe el proceso de validar una contraseña en pseudocódigo. No lo escribas; dime cómo pensarías cada paso.»
· Inciso 2.4. Ejercicio práctico: diseña en pseudocódigo un algoritmo para preparar un sándwich o para cruzar una calle con semáforo. DeepSeek revisa la lógica y sugiere mejoras.
—
Capítulo 3. Instalación y tu primer programa: «Hola, mundo»
(2 horas)
· Inciso 3.1. ¿Por qué Python? Legibilidad (parece inglés), versatilidad (web, datos, IA, juegos) y comunidad. Python es el lenguaje más enseñado del mundo.
· Inciso 3.2. Instalación de Python y un editor de código. Opciones: IDLE (viene con Python), Thonny (recomendado para principiantes), VS Code (más avanzado) o Replit (online, sin instalar nada).
· Subinciso 3.2.1. Ejercicio guiado: «DeepSeek, estoy en Windows/macOS/Linux. Quiero instalar Python y Thonny. Guíame paso a paso.»
· Inciso 3.3. Tu primer programa: print(«Hola, mundo»). Explicación línea a línea: print es una función integrada, las comillas delimitan texto, los paréntesis contienen los argumentos.
· Inciso 3.4. Prueba a cambiar el texto, a imprimir varias líneas, a sumar números dentro del print. Experimenta.
—
Capítulo 4. Variables y tipos de datos: La memoria del programa
(3 horas)
· Inciso 4.1. ¿Qué es una variable? Una etiqueta que guarda un valor en la memoria. Analogía: una caja con una etiqueta. nombre = «Ana», edad = 16, altura = 1.72.
· Inciso 4.2. Tipos de datos básicos:
· int (entero): 3, -7, 0, 1500.
· float (decimal): 3.14, -0.5, 1.0.
· str (cadena de texto): «Hola», ‘Python’, «123» (no es un número).
· bool (booleano): True, False.
· Inciso 4.3. La función type(). Cómo preguntar a Python de qué tipo es una variable.
· Inciso 4.4. Nombres de variables: buenas prácticas. Descriptivos (nombre_alumno, no a ni x1), en minúsculas con guiones bajos (snake_case), sin espacios ni caracteres especiales, sin palabras reservadas (print, if, for).
· Inciso 4.5. Comentarios en Python: # Esto es un comentario (línea) o «»»comentario multilínea»»». Los comentarios explican el porqué del código, no el qué.
· Inciso 4.6. Ejercicio práctico: crea variables para tus datos personales (nombre, edad, ciudad, si te gusta programar) e imprímelas con print.
—
Capítulo 5. Entrada, salida y operadores
(3 horas)
· Inciso 5.1. La función input(). Cómo pedir datos al usuario. nombre = input(«¿Cómo te llamas? «). Cuidado: input siempre devuelve texto (str).
· Inciso 5.2. Conversión de tipos: int(), float(), str(). Ejemplo: edad = int(input(«¿Cuántos años tienes? «)).
· Inciso 5.3. Concatenación vs. coma en print. print(«Hola, » + nombre) vs. print(«Hola,», nombre). Ventajas e inconvenientes de cada una.
· Subinciso 5.3.1. F-strings (Python 3.6+): la forma más moderna. print(f»Hola, {nombre}. Tienes {edad} años.»).
· Inciso 5.4. Operadores aritméticos: +, -, *, / (división siempre devuelve float), // (división entera), % (módulo, resto de la división), ** (potencia). Jerarquía de operaciones y uso de paréntesis.
· Inciso 5.5. Operadores de comparación: == (igual a), != (distinto de), > (mayor que), < (menor que), >=, <=. Resultado: booleano (True o False).
· Inciso 5.6. Ejercicio práctico: crea una mini-calculadora que pida dos números al usuario y muestre la suma, resta, multiplicación y división. «DeepSeek, te paso mi código. Revísame la conversión de tipos y el formato de salida.»
PARTE II: DECISIONES Y REPETICIONES. CONDICIONALES Y BUCLES
(14 horas)
—
Capítulo 6. Condicionales if, elif y else: Que Python decida por ti
(4 horas)
· Inciso 6.1. La estructura de decisión: if condición: seguido de bloque indentado (4 espacios o 1 tabulación). Python usa la indentación para saber qué está dentro del if.
· Inciso 6.2. if simple: if edad >= 18: print(«Eres mayor de edad»).
· Inciso 6.3. if / else: dos caminos. if temperatura > 30: print(«Hace calor») else: print(«No hace tanto calor»).
· Inciso 6.4. if / elif / else: múltiples caminos. if nota >= 9: calificacion = «Sobresaliente» elif nota >= 7: calificacion = «Notable» elif nota >= 5: calificacion = «Aprobado» else: calificacion = «Suspenso».
· Inciso 6.5. Operadores lógicos: and (ambas condiciones ciertas), or (al menos una cierta), not (invierte). Ejemplo: if edad >= 12 and edad <= 18: print(«Eres adolescente»).
· Inciso 6.6. Estructura if anidados: un if dentro de otro. Cuidado con la indentación.
· Inciso 6.7. Ejercicio práctico: crea un programa que determine el precio de una entrada según la edad (gratis <5 años, infantil 5-12, general 13-64, senior >65). DeepSeek revisa la lógica de las condiciones.
—
Capítulo 7. Bucle while: Repetir mientras se cumpla una condición
(4 horas)
· Inciso 7.1. ¿Qué es un bucle? Repetir un bloque de código varias veces sin copiarlo y pegarlo.
· Inciso 7.2. El bucle while: sintaxis y flujo. while condicion: seguido de bloque indentado. El bucle se ejecuta mientras la condición sea True.
· Inciso 7.3. El peligro del bucle infinito: si la condición nunca se vuelve False, el programa no termina. Cómo detenerlo (Ctrl+C o Ctrl+D).
· Inciso 7.4. Patrones comunes con while:
· Contador: repetir N veces.
· Acumulador: sumar valores hasta que el usuario introduzca 0.
· Validación: repetir hasta que el usuario introduzca un valor válido.
· Inciso 7.5. Ejercicio práctico guiado: «DeepSeek, quiero hacer un programa que pida contraseña al usuario y no le deje pasar hasta que escriba ‘Python123’. Guíame con while, input y condicionales.»
· Inciso 7.6. Juego de adivinanza: el programa genera un número aleatorio y el usuario intenta adivinarlo con pistas de «demasiado alto» o «demasiado bajo».
—
Capítulo 8. Bucle for: Recorrer secuencias
(3 horas)
· Inciso 8.1. El bucle for en Python: diferente a otros lenguajes. for elemento in secuencia: repite el bloque para cada elemento de la secuencia.
· Inciso 8.2. La función range(): genera una secuencia de números. range(10) → 0, 1, 2, …, 9. range(inicio, fin) → inicio a fin-1. range(inicio, fin, paso) → con incremento personalizado.
· Subinciso 8.2.1. Cuidado: range no incluye el valor final. range(1, 10) es 1, 2, …, 9.
· Inciso 8.3. Tablas de multiplicar y otros patrones con for y range.
· Inciso 8.4. for con cadenas de texto: recorrer letra a letra. for letra in «Python»: print(letra).
· Inciso 8.5. for vs. while: cuándo usar cada uno. for cuando sabes cuántas repeticiones necesitas; while cuando depende de una condición cambiante.
—
Capítulo 9. Introducción a la depuración: Errores y cómo solucionarlos
(3 horas)
· Inciso 9.1. Tipos de errores en Python:
· Error de sintaxis (SyntaxError): falta un paréntesis, dos puntos, o la indentación es incorrecta.
· Error de ejecución (TypeError, ValueError, ZeroDivisionError, IndexError): el código es sintácticamente correcto pero falla al ejecutarse.
· Error lógico: el programa se ejecuta sin errores pero no hace lo que esperabas. El más difícil de detectar.
· Inciso 9.2. Cómo leer un mensaje de error: número de línea, tipo de error y descripción.
· Inciso 9.3. Técnica de depuración con print: insertar prints estratégicos para ver el valor de las variables en cada momento.
· Inciso 9.4. Depuración paso a paso con Thonny: ejecutar línea por línea, ver cómo cambian las variables, inspeccionar el estado del programa.
· Inciso 9.5. Ejercicio práctico: «DeepSeek, te paso un código con 5 errores. No me digas cuáles son; dame pistas para que yo los encuentre y los corrija.»
PARTE III: ORGANIZANDO EL CÓDIGO. FUNCIONES, LISTAS Y ESTRUCTURAS DE DATOS
(12 horas)
—
Capítulo 10. Funciones: Crear tus propias herramientas reutilizables
(4 horas)
· Inciso 10.1. ¿Qué es una función? Un bloque de código con nombre que realiza una tarea específica y puede ser llamado desde cualquier parte del programa. Ventajas: reutilización, organización, legibilidad.
· Inciso 10.2. Sintaxis: def nombre_funcion(parametros): seguido de bloque indentado. return para devolver un valor.
· Inciso 10.3. Parámetros y argumentos. Parámetro = variable en la definición; argumento = valor que se pasa al llamar. Pueden ser obligatorios u opcionales (con valor por defecto).
· Inciso 10.4. Ámbito de las variables (scope): variables locales (dentro de la función) vs. variables globales (fuera de todas las funciones). Buenas prácticas: evitar modificar variables globales dentro de funciones.
· Inciso 10.5. Buenas prácticas: cada función debe hacer UNA sola cosa, con un nombre descriptivo en snake_case. Documentar con docstring («»»Descripción breve.»»»).
· Inciso 10.6. Ejercicio práctico: reescribe la calculadora y el validador de contraseñas usando funciones para cada operación. «DeepSeek, revisa mi código y dime si la modularización es correcta.»
—
Capítulo 11. Cadenas de texto en profundidad
(2 horas)
· Inciso 11.1. Indexación y slicing: cadena[0] (primer carácter), cadena[-1] (último), cadena[inicio:fin:paso] (subcadena).
· Inciso 11.2. Métodos útiles: upper(), lower(), title(), strip() (quita espacios), replace(viejo, nuevo), split(separador) (divide en lista), join(lista) (une lista en cadena).
· Inciso 11.3. Recorrido con for e indexación.
—
Capítulo 12. Listas: Colecciones ordenadas de datos
(4 horas)
· Inciso 12.1. ¿Qué es una lista? Estructura que almacena varios valores en orden. frutas = [«manzana», «plátano», «cereza»]. Los índices empiezan en 0.
· Inciso 12.2. Acceso, modificación, indexación y slicing con listas.
· Inciso 12.3. Métodos de listas: append(x) (añadir al final), insert(i, x) (insertar en posición i), remove(x) (eliminar primera ocurrencia), pop(i) (eliminar y devolver), sort() (ordenar), reverse(), len(lista).
· Inciso 12.4. Recorrer listas con for y con enumerate() (para obtener índice y valor).
· Inciso 12.5. Listas de comprensión (list comprehensions): forma compacta de crear listas. cuadrados = [x**2 for x in range(1, 11)].
· Inciso 12.6. Ejercicio práctico: crea un programa que gestione una lista de tareas pendientes (añadir, eliminar, marcar como completada, mostrar todas). Usa funciones, bucles y listas.
—
Capítulo 13. Introducción a los diccionarios y otras estructuras
(2 horas)
· Inciso 13.1. ¿Qué es un diccionario? Pares clave-valor. alumno = {«nombre»: «Ana», «edad»: 16, «curso»: «4º ESO»}.
· Inciso 13.2. Acceso por clave, añadir y modificar pares. Métodos: keys(), values(), items().
· Inciso 13.3. Iteración sobre diccionarios.
· Inciso 13.4. Tuplas: listas inmutables (no se pueden modificar después de creadas).
· Inciso 13.5. Cuándo usar cada estructura: lista (colección ordenada y modificable), tupla (colección ordenada e inmutable), diccionario (asociación clave-valor).
PARTE IV: PROYECTO INTEGRADOR. TU PRIMERA APLICACIÓN COMPLETA
(7 horas)
—
Capítulo 14. Diseño del proyecto y primeros desarrollos
(3 horas)
· Inciso 14.1. Elige tu proyecto entre varias opciones (o propón uno propio):
· Gestor de tareas: Añadir, listar, marcar como completada y eliminar tareas.
· Calculadora de IMC: Pide peso y altura, calcula el índice de masa corporal e interpreta el resultado.
· Juego del ahorcado: El programa elige una palabra secreta y el usuario adivina letras.
· Conversor de monedas: Convierte euros a otras divisas con tasas fijas o consultando una API.
· Adivina el número: El programa elige un número y el usuario intenta adivinarlo con pistas.
· Generador de contraseñas seguras: Genera contraseñas aleatorias con longitud y complejidad personalizables.
· Quiz de preguntas y respuestas: El programa hace preguntas y calcula la puntuación final.
· Cajero automático básico: Consulta de saldo, ingreso y retirada con validaciones.
· Inciso 14.2. Planifica tu proyecto: escribe un pseudocódigo o diagrama de flujo describiendo las funcionalidades principales.
· Inciso 14.3. «DeepSeek, te describo la idea de mi proyecto. Ayúdame a planificar los módulos y funciones. No decidas por mí.»
—
Capítulo 15. Desarrollo y depuración del proyecto
(3 horas)
· Inciso 15.1. Desarrolla el proyecto por fases: estructura básica → funcionalidad principal → validaciones → mejora de la interfaz de texto.
· Inciso 15.2. Depura cada función con prints de diagnóstico o el depurador de Thonny.
· Inciso 15.3. «DeepSeek, te paso fragmentos de mi código. Revísame la lógica y dime si hay errores o algo que se pueda mejorar. No reescribas mi código.»
—
Capítulo 16. Presentación, cierre y diploma
(1 hora)
· Inciso 16.1. Presenta tu proyecto al grupo o al facilitador: qué hace, cómo lo diseñaste, qué fue lo más difícil.
· Inciso 16.2. Recapitulación: ¿qué conceptos de programación dominas ahora que hace 15 semanas te parecían imposibles?
· Inciso 16.3. Próximos pasos: análisis de datos con Python, desarrollo web, inteligencia artificial.
· Inciso 16.4. Diploma de aprovechamiento y cierre.
—
RESUMEN EJECUTIVO DEL CURSO
Dimensión Resumen
Rol de la IA Tutora de programación, depuradora de errores, generadora de ejercicios, revisora de código
Rol del estudiante Programador/a en formación: escribe, depura, resuelve problemas y construye su primera aplicación
Rol del facilitador Apoyo técnico, verificador de la comprensión real de los conceptos, motivador ante la frustración
Meta última Que el alumno piense computacionalmente, escriba programas funcionales en Python y tenga la base para seguir aprendiendo cualquier lenguaje o tecnología
Horas 45
Estructura 4 Partes, 16 Capítulos
—
¿Deseas que continuemos con el desarrollo de otro curso de la lista de programación (por ejemplo, CSS y Diseño Web Responsive o JavaScript para la Web Interactiva), o prefieres explorar otro ámbito del ecosistema?