Coding Giants
Introducción a la programación en Python (Curso con contenido de IA)
12-16 años

Introducción a la programación en Python (Curso con contenido de IA)

Python es la clave para el mundo de los programadores y los creadores de IA. Apréndelo en la práctica creando scripts que realmente te faciliten la vida. Con ChatGPT y Copilot, el código deja de ser abstracto. Utiliza DALL·E y Suno para dar vida a tus ideas. Empieza a escribir el futuro, línea a línea.

Introducción

Aprenderemos Python y su sintaxis. Exploraremos variables, bucles, funciones y sentencias condicionales. Crearemos programas y scripts. Con ChatGPT, Gemini y GitHub Copilot, practicaremos el pensamiento lógico y la resolución de problemas paso a paso. Utilizaremos la IA para gráficos (Canva AI, DALL·E) y música (Suno, ElevenLabs).

Programa del curso

1Clase 1. Introducción a Python
El objetivo de la lección es crear el primer programa en el lenguaje de programación Python, aprender las funciones básicas print() e input(), comprender los comentarios y familiarizarse con el entorno Visual Studio Code.
2Clase 2. Variables
El objetivo de esta lección es aprender sobre variables, tipos de datos int y string, la conversión entre estos tipos y una forma cómoda de mostrar datos: fstring. Además, los alumnos aprenderán operaciones matemáticas básicas y utilizarán la inteligencia artificial como ayuda para el aprendizaje.
3Clase 3. Float: cálculos en Python
El objetivo de esta clase es aprender sobre un nuevo tipo de datos: float. Además, los alumnos aprenderán operaciones matemáticas más avanzadas.
4Clase 4. Consolidación de conocimientos e introducción a las listas
El objetivo de esta clase es aprender sobre un nuevo tipo de datos: float. Además, los alumnos aprenderán operaciones matemáticas más avanzadas.
5Clase 5. Bucle for
El objetivo de esta lección es introducir el tema de los bucles. Aprenderemos sobre el bucle for y discutiremos su aplicación utilizando ejemplos.
6Clase 6. Lógica y if
El objetivo de la lección es aprender las operaciones lógicas, el tipo de dato booleano y las sentencias condicionales.
7Clase 7. Anidación – consolidación de conocimientos
El objetivo de la lección es consolidar la información sobre variables, listas, bucles for y sentencias condicionales, así como entrenar su uso eficaz en la práctica.
8Clase 8. Bucle while
El objetivo de esta lección es aprender el bucle while.
9Clase 9. Funciones
El objetivo de esta lección es aprender sobre funciones y depuración.
10Clase 10. Consolidación de conocimientos – programación del juego Yahtzee
El objetivo de esta lección es consolidar los conocimientos sobre funciones, bucles, anidación y funciones auxiliares. También comenzaremos un proyecto del juego Yahtzee que permite a los estudiantes aplicar en la práctica todas las habilidades que han adquirido hasta ahora.
11Clase 11. Yahtzee – parte 2
El objetivo de esta lección es completar el proyecto del juego: Yahtzee.
12Clase 12. Turtle
El objetivo de la lección es aprender a utilizar la biblioteca de gráficos turtle.
13Clase 13. Turtle – parte 2
El objetivo de esta lección es aprender funciones más avanzadas del módulo turtle.
14Clase 14. Turtle – consolidación de conocimientos
El objetivo de la lección es consolidar los conocimientos sobre la biblioteca «turtle»
15Clase 15. Introducción a la POO (Programación Orientada a Objetos)
El objetivo de la lección es introducir la programación orientada a objetos en Python
16Clase 16. POO – Ejercicios
El objetivo de esta lección es ampliar los conocimientos de los alumnos sobre la programación orientada a objetos en Python mediante ejemplos avanzados y aplicaciones prácticas.
17Clase 17. POO – herencia y polimorfismo
El objetivo de la lección es aprender mecanismos avanzados de la programación orientada a objetos: la herencia y el polimorfismo, y cómo utilizarlos en la práctica.
18Clase 18. POO – juego RPG parte 1
El objetivo de la lección es aplicar en la práctica todos los conocimientos sobre programación orientada a objetos mediante la creación de un proyecto completo de juego RPG y el análisis de un sistema de simulación de ecosistemas.
19Clase 19. POO – juego RPG parte 2
El objetivo de esta lección es poner en práctica todos los conocimientos de programación orientada a objetos mediante la creación de un proyecto completo de juego de rol y el análisis de un sistema de simulación de ecosistemas.
20Lección 20. Introducción a la programación orientada a objetos (clases, objetos)
En esta lección aprenderá qué son las clases y los objetos y en qué casos vale la pena utilizarlos en la programación. Aprenderemos a crear tus propios objetos, sus funciones y variables.
21Lección 21. Constructor
El propósito de esta lección es discutir el constructor en las clases y explicar la diferencia entre la variable asociada al objeto y la clase.
22Lección 22. Herencia
En esta lección, aprenderá cómo heredar clases y cómo usarlas.
23Lección 23. Repetición de la programación orientada a objetos
Crearemos un juego de texto RPG simple, donde al usar clases le agregaremos oponentes con habilidades únicas.
24Lección 24. Creador de personajes (Parte 1)
El objetivo del proyecto será escribir un minijuego utilizando la biblioteca Pygame donde el jugador podrá crear su propio personaje a partir de varios elementos más pequeños, como la apariencia de la cara, el peinado o el equipo.
25Lección 25. Creador de personajes (Parte 2)
Las clases son una continuación del tema realizado en la lección anterior.
26Lección 26. Snake (Parte 1)
El objetivo de la lección será recrear el juego de culto Snake. En este proyecto, usaremos el conocimiento de la clase para crear un juego de serpientes usando la biblioteca Pygame.
27Lección 27. Snake (Parte 2)
Las clases son una continuación del tema realizado en la lección anterior.
28Lección 28. Snake (Parte 3)
La clase es una continuación del tema realizado en la lección anterior.
29Lección 29. Juego Arkanoid (Parte 1)
El objetivo de la lección es crear un clon del juego Arkanoid. Será el proyecto más avanzado. El juego tendrá una lógica compleja de colisión y rebote de pelota, discutiremos cómo puedes implementar diferentes niveles en el juego.
30Lección 30. Juego Arkanoid (Parte 2)
El propósito de la lección es continuar la lección anterior, crear el proyecto del juego Arkanoid.
31Lección 31. Juego Arkanoid (Parte 3)
Finalización del proyecto Arkanoid y resumen del semestre.
32Lección 32. Estructuras de datos avanzadas
En programación, existen estructuras de datos predefinidas, como matrices o listas. Sin embargo, en ocasiones, necesitamos crear una estructura personalizada y adaptada a nuestras necesidades. En esta clase, aprenderemos cómo hacer esto.
33Lección 33. Desarrollo y análisis de algoritmos.
Los algoritmos son herramientas que ayudan a resolver diversos problemas. Si bien hay prefabricados algoritmos en programación, a veces necesitamos crear unos personalizados que se adapten a nuestras necesidades. Durante esta lección, aprenderemos cómo desarrollar y analizar algoritmos para abordar mejor diferentes problemas de programación.
34Lección 34. Tamagotchi (Parte 1)
En esta lección, crearemos un juego de Tamagotchi sencillo en el que cuidarás de una mascota virtual. Tendrás que cuidar sus niveles de felicidad y hambre, alimentarlo, jugar con él e incluso ajustar su apariencia en función de su estado de ánimo. Nuestro juego será interactivo, gracias a simples botones en pantalla.
35Lección 35. Tamagotchi (Parte 2)
En la lección, el proyecto Tamagotchi se ampliará con nuevas funciones.
36Lección 36. Diccionarios y JSON
En esta lección, revisaremos cómo usar diccionarios y aprenderemos qué son los archivos JSON. Entenderemos las diferencias entre ellos y cómo utilizar la biblioteca JSON.
37Lección 37. Oferta de vacaciones: generación automática de PDF con Python
En esta lección, aprenderemos sobre la biblioteca fpdf y la usaremos para generar un archivo PDF con una oferta de vacaciones.
38Lección 38. Matplotlib: el arte de crear gráficos en Python
En esta lección, aprenderemos cómo agrupar datos y crear gráficos basados ​​en ellos.
39Lección 39. Administrador de archivos: programa para el cambio automático de nombres de archivos
En esta lección, aprenderemos cómo administrar carpetas creando un programa simple para cambiar el nombre de todos los archivos en una carpeta determinada.
40Lección 40. Reproductor de música
En esta lección, crearemos un programa que simula un reproductor MP3 donde podremos reproducir música y cambiar entre pistas.
41Lección 41. Imágenes locas: aplicar filtros a las imágenes
En esta lección, nos familiarizaremos con la biblioteca openCV y aprenderemos cómo aplicar filtros a las imágenes.
42Lección 42. Spambot - Programa de envío automático de correo electrónico
En esta lección, crearemos un programa para generar y enviar correos electrónicos automáticamente a una dirección determinada.
43Lección 43. Expresiones regulares - Regex
En esta lección, aprenderemos el arte de encontrar ciertos patrones dentro del texto.
44Lección 44. Edición de vídeo DIY: edición de vídeos con Python
En esta lección, aprenderemos cómo realizar una edición de video simple en Python: acelerar, desacelerar, recortar fragmentos o aplicar filtros a partes de un video.
45Lección 45. Desguace web parte 1
En esta lección conoceremos las bibliotecas request y bs4, a través de las cuales aprenderemos cómo extraer datos de sitios web.
46Lección 46. Desguace web parte 2
En esta lección conoceremos las bibliotecas request y bs4, a través de las cuales aprenderemos cómo extraer datos de sitios web.
47Lección 47. Proyecto Final (Parte 1)
En esta lección crearemos un proyecto extenso que resuma los conocimientos adquiridos durante el curso.
48Lección 48. Proyecto Final (Parte 2)
En esta lección crearemos un proyecto extenso que resuma los conocimientos adquiridos durante el curso.