Objetivo de Aprendizaje
Dominar los fundamentos del lenguaje Python mediante la comprensión de su historia, entorno de desarrollo y estructura básica, desarrollando la capacidad para crear programas simples aplicando conceptos de variables, tipos de datos y buenas prácticas de programación, con el fin de resolver problemas prácticos del entorno académico y cotidiano, cultivando un pensamiento lógico, metódico y creativo que sirva como cimiento para el aprendizaje continuo en el mundo de la tecnología.
Tu Primera Conversación con Python
Python no es solo un lenguaje de programación; es un puente entre el pensamiento humano y la lógica de las máquinas. Su diseño elegante y legible lo convierte en el compañero ideal para dar tus primeros pasos en el mundo de la programación.
Historia Resumida: El Nacimiento de una Serpiente Sabia
Guido van Rossum, un programador holandés, comienza a trabajar en Python durante sus vacaciones de Navidad. Su objetivo: crear un lenguaje que fuera fácil de leer, escribir y mantener.
Se lanza la primera versión pública (0.9.0). El nombre "Python" no viene de la serpiente, sino del grupo de comedia británico Monty Python, reflejando el sentido del humor de su creador.
Python 2.0 introduce características importantes como la recolección de basura y soporte para Unicode, consolidando su uso en la industria.
Nace Python 3.0, una revisión importante que rompe compatibilidad con versiones anteriores para corregir defectos de diseño. ¡Un acto de valentía para mejorar el lenguaje!
Python es uno de los lenguajes más populares del mundo, usado por millones de programadores, desde principiantes hasta científicos de datos en la NASA.
¿En qué se aplica Python?
- Ciencia de Datos y Machine Learning: Análisis de datos, inteligencia artificial y modelos predictivos.
- Desarrollo Web: Sitios dinámicos con Django y Flask (Instagram, Pinterest).
- Automatización: Scripts para tareas repetitivas (organizar archivos, procesar documentos).
- Educación: Lenguaje ideal para enseñar programación por su sintaxis clara.
- Ciberseguridad: Herramientas para análisis de vulnerabilidades y pruebas de penetración.
- Internet de las Cosas (IoT): Programación de dispositivos inteligentes y sensores.
Python es como el español de los lenguajes de programación: expresivo, claro y con muchas formas de decir lo mismo. Su filosofía se resume en "Zen de Python": "Lo bello es mejor que lo feo. Lo explícito es mejor que lo implícito. Lo simple es mejor que lo complejo."
Tu Taller Digital: El Entorno de Desarrollo
¿Qué es un entorno de desarrollo?
Es tu espacio de trabajo digital, donde escribirás, probarás y depurarás tu código. Imagínalo como el taller de un artesano: tienes tus herramientas organizadas, tu banco de trabajo limpio y todo a mano para crear.
Instalación práctica
Visita python.org, descarga la última versión de Python (3.x) e instálala en tu computadora. Durante la instalación, ¡no olvides marcar la opción "Add Python to PATH"! Esto le dice a tu sistema operativo dónde encontrar Python cuando lo llames.
Editores de Código: Tu Lápiz Digital
Un editor de código es donde escribirás tus programas. Algunas opciones excelentes para comenzar:
- Visual Studio Code (VS Code): Gratuito, potente y con muchas extensiones para Python.
- PyCharm Community: Especializado en Python, con muchas herramientas integradas.
- Thonny: Diseñado específicamente para principiantes, muy simple de usar.
- Sublime Text: Liviano y rápido, ideal para equipos menos potentes.
Ejecución de Programas: Dar Vida al Código
# Este es mi primer programa en Python
# Para ejecutarlo, guarda este archivo como .py
# Luego ábrelo con Python o usa la terminal
Para ejecutar un programa en Python:
- Guarda tu código con extensión .py
- Abre la terminal o consola de comandos
- Navega hasta la carpeta donde guardaste el archivo
- Escribe:
python nombre_del_archivo.py
Errores Comunes al Iniciar
Los errores no son fracasos, son maestros. Cada mensaje de error es Python intentando decirte exactamente qué necesita para entenderte mejor.
- "Python no se reconoce como comando": No instalaste Python o no marcaste "Add to PATH".
- Error de indentación: En Python, los espacios y tabulaciones importan. Usa 4 espacios por nivel.
- Olvidar los dos puntos (:): Después de if, for, while, def, class siempre va :
- Error en nombres de archivo: No uses espacios ni caracteres especiales. Usa guiones_bajos.
- Problemas con las comillas: Asegúrate de que las comillas de apertura y cierre coincidan.
Los Ladrillos de tu Programa
Instrucciones y Sentencias
Cada línea de código es una instrucción que le das a Python. Python las ejecuta en orden, de arriba hacia abajo, como seguir una receta paso a paso.
# Las instrucciones se ejecutan en orden
print("Paso 1: Saludar") # Esta es una instrucción
nombre = "Ana" # Otra instrucción
print("Hola,", nombre) # Y otra más
print("Paso 3: Despedir")
print("¡Hasta luego!")
Comentarios: Notas para tu Yo Futuro
Los comentarios son líneas que Python ignora, pero que son esenciales para explicar qué hace tu código. En Python, los comentarios empiezan con #.
Escribe comentarios como si fueras a explicarle tu código a alguien que acaba de despertar de un coma de 5 años. Incluye el "por qué", no solo el "qué".
Bloques de Código: La Indentación Sagrada
En Python, la indentación (los espacios al inicio de una línea) define bloques de código. A diferencia de otros lenguajes que usan llaves {}, Python confía en tu buen gusto para organizar el código.
if 5 > 3:
print("Cinco es mayor que tres") # Este print está dentro del if
print("Sigo dentro del bloque")
print("Ya salí del bloque") # Este ya no tiene indentación
# ERROR: Indentación inconsistente
# if 5 > 3:
# print("Unos espacios")
# print("Otros espacios") # ¡Error!
Buenas Prácticas Iniciales
- Nombres descriptivos: Usa
edad_usuarioen lugar dex. - Comentarios útiles: Explica el "por qué", no el "qué" obvio.
- Indentación consistente: Usa siempre 4 espacios (no tabs mezclados).
- Líneas no muy largas: Máximo 79 caracteres por línea (regla de Python).
- Prueba constantemente: Ejecuta tu código después de cada cambio pequeño.
- Divide y vencerás: Si un problema es complejo, divídelo en problemas más pequeños.
Variables: Las Cajas de la Programación
Concepto de Variable
Una variable es como una caja con una etiqueta donde guardas información. Puedes poner algo en la caja, cambiar lo que hay dentro, o leerlo cuando lo necesites.
nombre = "Carlos" # Guarda texto
edad = 17 # Guarda un número entero
estatura = 1.75 # Guarda un número decimal
es_estudiante = True # Guarda un valor lógico (verdadero/falso)
# Usar las variables
print("Nombre:", nombre)
print("Edad:", edad)
print("Dentro de un año tendrás", edad + 1, "años")
Reglas para Nombrar Variables
Ejercicio práctico
De estas opciones, ¿cuáles son nombres válidos para variables en Python? mi_variable,
1variable, variable_1, mi-variable, _variable,
MiVariable, class
- Pueden contener: letras (a-z, A-Z), números (0-9) y guiones bajos (_)
- Deben empezar con: letra o guión bajo (_), NO con número
- No pueden ser: palabras reservadas de Python (if, for, while, etc.)
- Sensible a mayúsculas:
edad,EdadyEDADson variables diferentes - Convenciones: Usa snake_case (guiones_bajos) para variables normales
Tipos de Datos Básicos
alumnos_salon = 30
año_actual = 2024
# Reales (float): números con decimales
promedio = 8.75
pi = 3.14159265
# Texto (str): cadenas de caracteres
saludo = "Hola, ¿cómo estás?"
direccion = 'Calle Flores 123' # Comillas simples también funcionan
# Lógicos (bool): verdadero o falso
aprobado = True
es_fin_de_semana = False
# Verificar tipo de dato con type()
print("Tipo de alumnos_salon:", type(alumnos_salon))
print("Tipo de promedio:", type(promedio))
print("Tipo de saludo:", type(saludo))
Conversión de Tipos de Datos
A veces necesitas convertir un tipo de dato en otro. Python te ofrece funciones para hacerlo:
edad_texto = "18"
edad_numero = int(edad_texto) # Convierte a entero
nueva_edad = edad_numero + 1
# De número a texto
promedio = 9.5
promedio_texto = str(promedio) # Convierte a texto
mensaje = "Mi promedio es " + promedio_texto
# De entero a decimal
division = 10 / 3 # Resultado decimal (float)
division_entera = 10 // 3 # División entera (int)
print("División normal:", division)
print("División entera:", division_entera)
Las variables son como la memoria de tu programa. Nómbralas bien y elige el tipo de dato correcto, como un bibliotecario organiza libros por tema. Un buen nombre de variable es un regalo para tu "yo futuro" que tendrá que leer este código.
Desafío Python: El Camino del Aprendiz
Pon a prueba tu comprensión con este juego interactivo. Responde correctamente para avanzar en tu camino como programador Python.
El Reto Final: Tu Primer Programa Útil
Desafío: Calculadora de Promedio Inteligente
Crea un programa en Python que ayude a un estudiante a calcular su promedio de notas y darle retroalimentación personalizada. El programa debe:
- Solicitar al usuario su nombre (usando
input()). - Pedir las notas de 4 materias (Matemáticas, Lenguaje, Ciencias, Historia).
- Calcular el promedio general (suma de notas dividida entre 4).
- Usar estructuras de selección (
if/elif/else) para clasificar el promedio:- 9-10: "Excelente trabajo, [nombre]. ¡Eres un estudiante excepcional!"
- 7-8.9: "Buen trabajo, [nombre]. Vas por buen camino."
- 5-6.9: "Puedes mejorar, [nombre]. Revisa tus métodos de estudio."
- 0-4.9: "Necesitas ayuda, [nombre]. Busca a tu profesor."
- Mostrar el resultado formateado de manera clara y amigable.
Reflexiona: ¿cómo podrías hacer que tu programa sea más robusto? ¿Qué pasa si el usuario ingresa texto en lugar de números? ¿Cómo podrías manejar ese error? La programación no es solo hacer que funcione, sino hacer que funcione bien en todas las situaciones.
Extensión opcional (para los aventureros):
Agrega la capacidad de calcular el promedio ponderado (cada materia con diferente peso) y guarda los resultados en un archivo de texto para llevar un historial.
nombre = input("¿Cómo te llamas? ")
# Recuerda convertir el input a número: float(input(...))
matematica = float(input("Nota de Matemáticas: "))
Entrega: Sube tu código a un archivo .py y preséntalo en clase, explicando tus decisiones de diseño y qué aprendiste en el proceso.