print(): formatea y muestra datos en Python

Actualizado el: 20/08/2026
Tempo de leitura: 4 minutos
Logo do Python com emoji pensativo e a palavra PRINT sobre fundo azul

La función print() suele ser el primer comando que utiliza una persona al aprender Python. Sirve para mostrar texto, números, variables, resultados de cálculos y mensajes de diagnóstico en la salida estándar, normalmente un terminal o la consola del editor.

Esta guía explica print() en Python desde los ejemplos más básicos hasta separadores, finales de línea, f-strings, alineación, escritura en archivos, depuración y la diferencia entre imprimir, devolver y registrar información.

Primer ejemplo con print()

print("Hola, mundo")

Python evalúa el valor entre paréntesis y escribe su representación textual. Las cadenas necesitan comillas, mientras que los números pueden escribirse directamente.

print("Python es legible")
print(42)
print(3.14)
print(10 + 5)

La firma completa aparece en la documentación oficial de print(). Para conocer otras funciones esenciales, revisa la guía de funciones integradas de Python.

Mostrar variables

name = "Ana"
age = 24

print(name)
print(age)
print("Nombre:", name, "Edad:", age)

Cuando pasas varios argumentos, Python los convierte a texto y añade un espacio entre ellos. Esto evita convertir manualmente un número con str().

El parámetro sep

sep cambia el texto colocado entre los argumentos:

print("2026", "07", "11", sep="-")
print("inicio", "usuario", "proyecto", sep="/")
print("rojo", "verde", "azul", sep=" | ")

Es útil para salidas sencillas. Para archivos CSV reales, utiliza el módulo csv en lugar de construir filas manualmente.

El parámetro end

Por defecto, print() termina con un salto de línea. Cambia end para mantener la siguiente salida en la misma línea:

print("Cargando", end="")
print("...listo")

También puedes mostrar una secuencia horizontal:

for number in range(1, 6):
    print(number, end=" ")

print()

La guía de range() en Python explica cómo se genera la secuencia.

Formatear con f-strings

Las f-strings suelen ser la forma más clara de combinar texto, variables y expresiones.

product = "Teclado"
price = 89.9
quantity = 3

print(f"Producto: {product}")
print(f"Precio unitario: ${price:.2f}")
print(f"Total: ${price * quantity:.2f}")

Las especificaciones después de los dos puntos controlan decimales, porcentajes, ancho y alineación.

ratio = 0.8734
users = 1_250_000

print(f"Tasa de éxito: {ratio:.1%}")
print(f"Usuarios: {users:,}")

Consulta la guía de formato de números y moneda con f-strings para más opciones.

Alinear columnas

items = [
    ("Cuaderno", 12.00),
    ("Ratón", 29.90),
    ("Cable", 8.50),
]

print(f"{'Producto':<15} {'Precio':>10}")
print("-" * 26)

for product, price in items:
    print(f"{product:<15} ${price:>9.2f}")

< alinea a la izquierda, > a la derecha y ^ centra el valor.

Caracteres de escape

print("Primera línea\nSegunda línea")
print("Nombre\tPuntuación")
print("Ella dijo: \"Hola\"")
print("C:\\Usuarios\\Ana\\proyecto")
  • \n: salto de línea.
  • \t: tabulación.
  • \": comilla doble dentro de una cadena.
  • \\: barra invertida literal.

Las cadenas sin procesar pueden ser útiles para rutas y expresiones regulares:

print(r"C:\Usuarios\Ana\proyecto")

Mostrar listas y diccionarios

colors = ["azul", "verde", "naranja"]
user = {"name": "Sam", "active": True}

print(colors)
print(user)

La representación predeterminada es útil durante la depuración. Para el usuario final, crea una salida más clara:

for position, color in enumerate(colors, start=1):
    print(f"{position}. {color.title()}")

for key, value in user.items():
    print(f"{key}: {value}")

Escribir en un archivo

El parámetro file envía la salida a un flujo de texto:

with open("informe.txt", "w", encoding="utf-8") as report:
    print("Informe mensual", file=report)
    print("Pedidos: 128", file=report)
    print("Ingresos: $4,250.00", file=report)

El bloque with cierra el archivo correctamente. La guía de with en Python explica context managers y manejo seguro de recursos.

El parámetro flush

La salida puede permanecer en un búfer. flush=True solicita que se escriba inmediatamente:

import time

for second in range(3, 0, -1):
    print(second, end=" ", flush=True)
    time.sleep(1)

print("¡Ya!")

Puede ser útil para indicadores de progreso, procesos externos y salida redirigida.

Mostrar representaciones con repr

Los espacios y saltos ocultos son difíciles de ver. La conversión !r muestra una representación orientada al desarrollador:

username = "  ana\n"

print(f"username={username}")
print(f"username={username!r}")

Python también ofrece la forma de depuración:

total = 15 * 4
print(f"{total=}")

La guía sobre depuración con f-strings muestra más ejemplos.

print() muestra un valor. return devuelve un resultado para que otra parte del programa pueda utilizarlo.

def add_wrong(a, b):
    print(a + b)


def add(a, b):
    return a + b

result = add(2, 3)
print(result * 10)

Una función sin return explícito devuelve None. La guía de funciones en Python explica esta diferencia.

Los prints temporales son útiles para aprender y depurar. Las aplicaciones grandes suelen utilizar el módulo logging, que admite niveles, fechas, archivos y formatos configurables.

import logging

logging.basicConfig(level=logging.INFO)
logging.info("Aplicación iniciada")
logging.warning("Stock bajo")
logging.error("Pago fallido")

La documentación oficial de logging describe handlers, formatters y niveles. Nunca imprimas contraseñas, tokens ni datos personales sensibles.

Ejemplo práctico: recibo

cart = [
    ("Café", 8.50, 2),
    ("Pan", 4.00, 1),
    ("Leche", 5.25, 3),
]

grand_total = 0

print("=" * 40)
print(f"{'ARTÍCULO':<14}{'CANT':>5}{'UNIT':>9}{'TOTAL':>12}")
print("-" * 40)

for name, unit_price, quantity in cart:
    total = unit_price * quantity
    grand_total += total
    print(f"{name:<14}{quantity:>5}{unit_price:>9.2f}{total:>12.2f}")

print("-" * 40)
print(f"{'Total general':<28}${grand_total:>11.2f}")

Errores frecuentes

  • Olvidar los paréntesis en Python 3.
  • No cerrar las comillas.
  • Concatenar texto y números con + sin convertir.
  • Imprimir una función en vez de llamarla.
  • Confundir una salida visible con un valor retornado.
  • Dejar mensajes de depuración con información privada.

Conclusión

print() es simple, pero ofrece muchas opciones. Aprende a utilizar sep, end, f-strings, alineación, archivos y representaciones de depuración. Distingue entre mostrar y devolver valores, y cambia a logging cuando necesites registros configurables en aplicaciones duraderas.

Compartilhe:

Facebook
WhatsApp
Twitter
LinkedIn

Contenido del artículo

    Artículos relacionados

    notebook com código saindo da tela
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    Variables: asignación, tipos y alcance en Python

    Aprende variables en Python: asignación, nombres, tipos, conversiones, referencias, mutabilidad, alcance, constantes, None y errores frecuentes.

    Ler mais

    Tempo de leitura: 4 minutos
    12/07/2026
    Diferença entre operadores is e == em Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    == vs is en Python: igualdad vs identidad

    Entiende la diferencia entre == e is en Python, igualdad, identidad, None, interning, copias superficiales, deepcopy y objetos personalizados.

    Ler mais

    Tempo de leitura: 4 minutos
    12/07/2026
    Menu interativo no terminal criado com Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    Menú interactivo en terminal con Python

    Crea un menú interactivo en Python con while, funciones, diccionarios, validación, submenús, persistencia JSON y manejo seguro de errores.

    Ler mais

    Tempo de leitura: 4 minutos
    12/07/2026
    ícone de loop com o texto 'While' abaixo
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    while: repite acciones con condiciones en Python

    Aprende bucles while en Python con condiciones, validación, menús, break, continue, else, centinelas, reintentos y buenas prácticas.

    Ler mais

    Tempo de leitura: 5 minutos
    11/07/2026
    Imagem de um quadro negro com várias interrogações no lugar de lâmpadas, e uma lâmpada conectada no meio
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    if, elif y else: lógica condicional en Python

    Aprende if, elif y else en Python con comparaciones, operadores lógicos, validación, rangos, menús, retornos tempranos y pruebas.

    Ler mais

    Tempo de leitura: 4 minutos
    11/07/2026
    Manipulação de dados JSON em Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    JSON en Python: leer, escribir y validar datos

    Aprende JSON en Python con load, loads, dump, dumps, archivos UTF-8, validación, APIs, Decimal, fechas y escritura segura.

    Ler mais

    Tempo de leitura: 4 minutos
    11/07/2026