Ejercicios de Python resueltos para principiantes (FP1)

Todos los ejercicios de Python resueltos de SergioLearns en un solo sitio, por temas y de menos a más: primero los de FP1 para empezar desde cero y, debajo, los de programación orientada a objetos de FP2. Cada tema trae retos con la solución comentada, un cuestionario tipo examen y su chuletario.

sergio@learns: ~/ejercicios/python

sergio@learns:~$ ls -l ~/ejercicios/python --sort=nivel

total 20 temas · 66 ejercicios · 263 preguntas tipo examen

[ OK ] todas las soluciones están comentadas y se ejecutaron antes de publicarlas

==> pregunta-del-dia

Cargando la pregunta de hoy…

Ejercicios por tema

Cómo está hecho cada artículo de ejercicios

Todos siguen el mismo esquema, así que cuando te acostumbras a uno sabes moverte por los demás. Empiezan con «Cómo usar este artículo», siguen con los retos en tres niveles (básico, intermedio y un desafío final que junta todo el tema) y después vienen tres fragmentos de «¿Qué falla aquí?»: código que parece correcto pero tiene un fallo de los que se cometen de verdad en clase. Las soluciones están todas juntas al final, comentadas línea a línea y con la salida real que da Python al ejecutarlas, para que no las veas sin querer mientras piensas.

En la lista de arriba cada línea es un tema: cuántos ejercicios tiene, cuántas preguntas trae su cuestionario y su nombre, que te lleva directo al artículo. Al lado tienes la práctica guiada del mismo tema, el cuestionario y el chuletario. La lista se actualiza sola cada vez que publico un tema nuevo.

En qué orden hacerlos

Si empiezas desde cero, sigue el orden de la lista, que es el de FP1: variables y tipos de datos, operadores y condicionales; luego los bucles (lo que en buena parte de Latinoamérica se llaman ciclos: for y while) y las funciones; después módulos, listas y tuplas, mutabilidad y matrices, recursividad, diccionarios y conjuntos, strings, expresiones regulares y archivos de texto. Cada tema da por sabido el anterior, y saltarte uno se suele notar dos temas después.

El bloque de FP2 es el siguiente escalón: excepciones, clases, herencia, sobrecarga de operadores, iteradores y generadores, pruebas y una lista enlazada hecha a mano. Ahí ya no basta con que el programa funcione: también cuenta cómo está organizado.

Si vas justo de tiempo antes de un examen, no hace falta hacerlos todos. Haz el desafío final de cada tema: si te sale sin mirar, ese tema lo tienes; si no, vuelve a los de nivel básico.

Cómo practicar para que se quede

Lo que mejor me ha funcionado a mí en GCID es esto: leo el enunciado, tapo la solución y me doy unos veinte minutos para intentarlo, aunque salga feo. Lo escribo y lo ejecuto, nunca lo resuelvo solo de cabeza; si todavía no tienes Python, el entorno de Python de la web lo ejecuta en el navegador sin instalar nada. Cuando funciona, o cuando me rindo, comparo con la solución comentada y me fijo en lo que hice distinto, no solo en si da el mismo resultado.

No te saltes los «¿Qué falla aquí?». En el examen te piden leer código tanto como escribirlo, y encontrar el fallo en código ajeno entrena justo eso. Intenta decir qué imprime cada fragmento antes de abrir la explicación.

El cuestionario tipo examen

Casi todos los temas terminan con un cuestionario interactivo con preguntas como las del examen tipo test: de una respuesta, verdadero o falso, huecos, ordenar líneas… Te corrige al momento y explica cada respuesta. Hazlo al final, cuando ya has resuelto los ejercicios, y apunta las preguntas que fallas: son las que te toca repasar. Si solo tienes dos minutos, arriba tienes la pregunta del día, sacada cada día de un cuestionario de Python distinto.

Cuando tengas varios temas hechos, prueba los simulacros de examen: tienen reloj y nota, como el examen de verdad.

El chuletario y Python Tutor

Al final de cada artículo está el chuletario del tema: la sintaxis y los errores típicos en una sola página, para repasar la noche antes sin volver a leer toda la teoría. Todos los chuletarios están juntos en Recursos.

En «Míralo paso a paso en Python Tutor» tienes el código de un ejercicio listo para abrirlo en Python Tutor, una web que ejecuta el programa línea a línea y dibuja las variables y las listas en memoria. Es la forma más rápida de entender por qué al copiar una lista cambia la original o qué hace de verdad una función recursiva.

Antes de empezar y después

Si te cuesta entender qué es un archivo, una carpeta o un byte, lee antes Informática básica antes de programar; y si quieres tener Python en tu ordenador, aquí explico cómo instalar Python en Windows. Cuando acabes FP1, el siguiente paso en GCID son los ejercicios de Java resueltos de FP2, y en IC2 llegan los ejercicios de C resueltos. Todo lo demás para practicar está en Practica.