En este capítulo, exploramos los fundamentos de la entrada y salida en Python, dos conceptos esenciales que permiten a tus programas interactuar con el mundo exterior. Imagina que tu código es como un conversador: print es su voz para comunicar resultados, mientras que input es su oído para escuchar al usuario. Dominar estos te permite crear scripts interactivos básicos, como calculadoras simples o programas que responden a datos introducidos. Vamos paso a paso, asegurándonos de que cada idea se asiente firmemente antes de avanzar.
Imprimiendo Mensajes con print: Tu Primera Voz en Python
Comencemos con print, la función incorporada que envía texto o valores a la consola, es decir, a la pantalla de tu terminal. Piensa en print como un mensajero confiable: toma lo que le das y lo muestra tal cual, sin complicaciones. En Python, no necesitas importar nada para usarla; está lista desde el principio.
La sintaxis básica es simple: print(objeto). Aquí, objeto puede ser una cadena de texto (string), un número, una variable o incluso múltiples elementos separados por comas. Python automáticamente convierte todo a string antes de imprimirlo, lo que facilita las cosas.
Veamos un ejemplo práctico. Supongamos que creas un archivo llamado saludo.py con el siguiente código:
# Este es un comentario: print muestra un mensaje simple en la consola.
print("¡Hola, mundo!") # Imprime el texto entre comillas.
# Puedes imprimir variables o números directamente.
nombre = "Python" # Asignamos un valor a una variable.
print(nombre) # Imprime el contenido de la variable.
print(42) # Imprime un número entero.
PythonPara ejecutar este código, abre tu terminal, navega al directorio donde guardaste el archivo y escribe: python saludo.py. Verás la salida en la consola: “¡Hola, mundo!”, seguido de “Python” y “42”, cada uno en una línea nueva. ¿Por qué en líneas separadas? Porque print agrega un salto de línea (\n) al final por defecto, como si pulsaras “Enter” después de cada mensaje.
Ahora, profundicemos. ¿Qué pasa si quieres imprimir múltiples cosas en una sola llamada? Usa comas para separarlas:
# Imprimiendo múltiples elementos en una sola línea.
edad = 30
print("Tengo", edad, "años.") # Python inserta espacios entre elementos.
PythonEjecútalo con python multiples.py (asumiendo ese nombre de archivo). La salida será: “Tengo 30 años.” Observa cómo print añade espacios automáticamente entre los argumentos separados por comas. Esto es intencional para mayor legibilidad, pero puedes personalizarlo con el parámetro sep (separador).
Por ejemplo:
# Personalizando el separador con 'sep'.
print("Hola", "mundo", sep="-") # Usa guion como separador en lugar de espacio.
PythonSalida: “Hola-mundo”. Y si no quieres el salto de línea al final, usa end:
# Cambiando el final de línea con 'end'.
print("Hola", end=" ") # Termina con espacio en lugar de salto de línea.
print("mundo!") # Continúa en la misma línea.
PythonSalida: “Hola mundo!”. Estos parámetros (sep y end) te dan control preciso, como ajustar el tono de voz en una conversación. Recuerda: print no modifica tus datos; solo los muestra. Si imprimes una variable, su valor original permanece intacto.
Leyendo Datos del Usuario con input: Escuchando al Mundo Exterior
Ahora que puedes “hablar” con print, es hora de “escuchar” con input. Esta función pausa el programa y espera que el usuario escriba algo en la consola, devolviendo lo ingresado como una cadena de texto (string). Es como pedirle a alguien su nombre en una charla: detienes todo hasta obtener una respuesta.
La sintaxis es input(mensaje), donde mensaje es opcional pero recomendado para guiar al usuario. Por ejemplo:
# Solicitando entrada básica del usuario.
nombre = input("¿Cómo te llamas? ") # Muestra el mensaje y espera entrada.
print("¡Hola,", nombre, "!") # Usa la entrada en una salida.
PythonEjecútalo con python nombre.py. Verás el mensaje “¿Cómo te llamas? “, introduces tu nombre (por ejemplo, “Alex”), presionas Enter, y el programa responde “¡Hola, Alex!”. Fíjate: input siempre devuelve un string, incluso si introduces números. Esto es clave; Python no asume tipos, para evitar errores.
¿Qué si necesitas números? Convierte el string manualmente con funciones como int() o float(). Imagina que es como traducir un mensaje de un idioma a otro:
# Leyendo y convirtiendo a número entero.
edad_str = input("¿Cuántos años tienes? ") # input devuelve string.
edad = int(edad_str) # Convertimos a entero.
print("El próximo año tendrás", edad + 1) # Usamos el número en una operación.
PythonEjecútalo: introduce “25”, y verás “El próximo año tendrás 26”. Si introduces algo no numérico, como “veinticinco”, obtendrás un error (ValueError), pero no te preocupes; en capítulos futuros veremos cómo manejar eso. Por ahora, asume entradas válidas.
Para decimales, usa float():
# Conversión a flotante para números decimales.
altura_str = input("¿Cuál es tu altura en metros? ")
altura = float(altura_str) # Convertimos a float.
print("Tu altura en cm es", altura * 100)
PythonSalida ejemplo: si introduces “1.75”, verás “Tu altura en cm es 175.0”. Estas conversiones son simples pero poderosas; asegúrate de usarlas solo cuando sepas que la entrada es convertible, o el programa fallará.
Recuerda, input lee hasta que presionas Enter, incluyendo espacios. Si quieres limpiar la entrada (como eliminar espacios extras), puedes usar strip(): entrada = input().strip(). Pero mantengámoslo básico por ahora.
Combinando print e input: Creando Interactividad Básica
Con print e input en tu arsenal, puedes construir interacciones simples. Piensa en un programa que calcula el área de un rectángulo basado en entradas del usuario:
# Programa completo: calculadora de área simple.
print("Calculadora de área de rectángulo") # Mensaje inicial.
largo_str = input("Ingresa el largo: ") # Lee como string.
ancho_str = input("Ingresa el ancho: ") # Otro input.
largo = float(largo_str) # Convierte a float.
ancho = float(ancho_str) # Ídem.
area = largo * ancho # Calcula el área.
print("El área es", area, "unidades.") # Muestra el resultado.
PythonEjecútalo con python area.py. Introduce valores como “5” y “3”, y verás “El área es 15.0 unidades.”. Aquí, ves cómo la entrada fluye hacia cálculos y sale como output. No hay bucles ni validaciones complejas, solo flujo directo, pero ya sientes el poder de la interacción.
Domina esto practicando: crea variaciones, como un conversor de temperaturas simple (de Celsius a Fahrenheit: f = c * 9/5 + 32). Recuerda, cada input es un punto de pausa; úsalos con moderación para no abrumar al usuario.
Resumen del capítulo
- Print como salida básica: Usa
print()para mostrar texto, variables o múltiples elementos en la consola, con opciones comosepyendpara personalizar el formato. - Input para entrada del usuario:
input()lee datos como strings; conviértelos conint()ofloat()para números, asumiendo entradas válidas. - Ejecución de ejemplos: Siempre guarda tu código en un archivo
.pyy ejecútalo conpython nombre_archivo.pyen la terminal. - Interactividad simple: Combina print e input para programas que responden a datos del usuario, como calculadoras básicas, sin necesidad de estructuras avanzadas.
- Claves para el dominio: Recuerda que input siempre devuelve strings; las conversiones son esenciales para operaciones numéricas. Practica con analogías cotidianas para internalizar: print es hablar, input es escuchar.