Si terminaste «Programación desde cero» ya has dado un paso importante: sabes convertir una idea en instrucciones y has construido un gestor de tareas que conserva datos en JSON. «Programar con Python» continúa ese recorrido. No vuelve a presentar las variables o los bucles como si nunca los hubieras visto. Parte de esa base para enseñarte a organizar programas más completos, trabajar con archivos de intercambio y guardar registros en una base de datos local.
El proyecto común será un inventario de material para un pequeño taller. Registrarás artículos con código, nombre y cantidad. Podrás consultarlos desde la terminal, buscar por una parte de su nombre, exportar los datos a CSV e importarlos en otra base. El interés no está en acumular funciones vistosas sino en comprender cómo colaboran las piezas y qué debe ocurrir cuando una entrada es incorrecta. Utilizaremos datos inventados para que puedas experimentar sin comprometer información importante.
Este curso está pensado para personas adultas con conocimientos básicos de programación. Debes poder leer una función, reconocer una lista de diccionarios y ejecutar un archivo de Python. Si aún necesitas practicar esas operaciones conviene volver a las lecciones correspondientes del curso anterior. La primera unidad incluye un diagnóstico breve que te permitirá comprobar tu punto de partida. No se requieren matemáticas avanzadas ni experiencia profesional, aunque sí disposición para escribir código, observar resultados y corregir errores concretos.
La primera parte mejora tu forma de trabajar con el lenguaje. Prepararás un entorno separado, limpiarás textos con reglas explícitas y utilizarás colecciones para filtrar y ordenar. Después aprenderás a diseñar funciones comprobables, dividir responsabilidades entre módulos y tratar excepciones sin esconder defectos. Las pruebas automáticas aparecerán pronto porque son una herramienta de aprendizaje: convierten tus expectativas en comprobaciones que puedes repetir después de cada modificación.
También practicarás con fechas y números decimales. Esos ejercicios amplían tus recursos pero no se incorporan artificialmente al inventario. Aprenderás a elegir una representación adecuada para cada dato y a reconocer los límites de una solución. Una fecha de revisión no plantea el mismo problema que un instante con zona horaria. Una cantidad de unidades completas tampoco necesita la misma representación que un importe decimal. Distinguir esas necesidades evita complicar el código sin motivo.
La segunda parte se centra en el recorrido de los datos. Controlarás rutas, codificaciones y formatos CSV. Validarás un lote antes de guardarlo y utilizarás SQLite para conservar artículos con reglas de unicidad y transacciones. La aplicación terminará funcionando mediante órdenes de terminal con ayuda incorporada. No necesitarás contratar servicios ni instalar paquetes externos: trabajaremos con Python y módulos de su biblioteca estándar, incluida la interfaz de SQLite disponible habitualmente en sus distribuciones.
El resultado razonable es una aplicación pequeña que puedes explicar y comprobar. No será un sistema multiusuario, una tienda electrónica ni una herramienta de facturación. Tendrá límites expresos y los estudiarás como parte del trabajo. Aprenderás además a preparar una copia de los datos con la aplicación cerrada y a ensayar su recuperación. Una herramienta útil no solo debe funcionar al introducir un ejemplo correcto; también debe informar de fallos previstos y conservar una salida recuperable.
Cada capítulo combina explicación, código y un ejercicio que se corresponde con una hoja del cuaderno. Conserva tus predicciones, las entradas utilizadas y los resultados observados. No hay una velocidad obligatoria ni un beneficio especial por leer varias lecciones sin ejecutar nada. Al terminar tendrás una referencia propia para revisar cómo construiste el proyecto y una propuesta de mejora pequeña que podrás desarrollar con criterios de aceptación. Esa capacidad de continuar por tu cuenta es el objetivo práctico de este segundo curso.
Curso previo: Programación desde cero.
Cómo aprovechar este curso
¡Muy importante!
Debes ir anotando cada paso que des en una libreta o en el cuaderno de prácticas que puedes descargar en este enlace. Imprímelo (en muchos quioscos y papelerías tienen impresoras) y ve anotando cada paso y, en «Observaciones», cada cosa que te llame la atención para ir después volviendo a revisar tus anotaciones.
Si no haces esto, por muy listillo que te creas, el curso no te servirá de nada. Así de sencillo.
Cada día, antes de empezar la siguiente lección, lee tu cuaderno de prácticas para ir asimilando todo lo que llevas aprendido hasta el momento y no repetir errores.
Descarga e imprime el cuaderno antes de empezar. Conserva la sangría al copiar los bloques de código en archivos de texto plano. Los capítulos 14, 15, 16 y 19 indican los cuatro módulos definitivos; los demás ejemplos son prácticas independientes. El capítulo 20 añade las pruebas del proyecto.
Índice del curso
- Del primer programa a una aplicación útil
- Preparar un entorno de trabajo separado
- Limpiar y comparar textos con criterio
- Filtrar, ordenar y agrupar colecciones
- Diseñar funciones que puedas probar
- Separar el código en módulos claros
- Tratar errores sin esconder problemas
- Convertir las comprobaciones en pruebas
- Trabajar con fechas sin hacer cuentas a mano
- Calcular cantidades decimales con precisión
- Controlar rutas y archivos con pathlib
- Intercambiar tablas mediante CSV
- Validar una importación antes de guardar
- Representar artículos con un modelo de datos
- Guardar el inventario en SQLite
- Consultar datos y presentar resultados claros
- Utilizar argumentos desde la terminal
- Preparar copias y comprobar la recuperación
- Integrar el inventario y el intercambio de archivos
- Verificar el proyecto y ampliarlo con método
Materiales y preparación
- Un ordenador con Python 3.10 o posterior y el módulo sqlite3 disponible.
- Un editor de texto plano y una terminal.
- Una carpeta nueva para prácticas y proyecto, separada del curso anterior.
- El cuaderno impreso y un bolígrafo para registrar decisiones y pruebas.
No necesitas instalar paquetes de terceros. Practica con datos inventados y conserva copias de las versiones que funcionen.
Empieza por el capítulo 1: del primer programa a una aplicación útil.








