Diferentes maneras de usar print
La función print()
en Python es muy versátil. A continuación te explico todas las formas y opciones de usarla, junto con ejemplos para que entiendas bien cómo funciona en cada caso.
🔰 1. Uso básico
Imprime uno o varios elementos separados por espacios.
print("Hola mundo") # Texto simple
print("Nombre:", "Ana", "Edad:", 30)
📌 Por defecto, los valores están separados por espacios y terminan con un salto de línea (\n
).
⚙️ 2. Parámetros principales de print()
📌 sep
: separador entre los valores
print("Python", "Java", "C++", sep=" | ")
# Salida: Python | Java | C++
📌 end
: qué se imprime al final
print("Hola", end=", ")
print("mundo")
# Salida: Hola, mundo
📌 file
: redirige la salida a un archivo u otro flujo
with open("salida.txt", "w") as f:
print("Esto va al archivo", file=f)
📌 flush
: fuerza a imprimir inmediatamente (útil para logs en tiempo real)
import time
for i in range(3):
print(f"Cargando {i}...", end="\r", flush=True)
time.sleep(1)
🔁 3. Imprimir con formato
🟢 Método clásico con format()
nombre = "Carlos"
edad = 25
print("Me llamo {} y tengo {} años".format(nombre, edad))
🟢 f-strings (desde Python 3.6)
print(f"Me llamo {nombre} y tengo {edad} años")
🟢 %
estilo viejo (no recomendado en código moderno)
print("Mi edad es %d y me llamo %s" % (25, "Carlos"))
🔤 4. Imprimir caracteres especiales
print("Línea 1\nLínea 2") # Salto de línea
print("Tabulación:\tTexto") # Tabulador
print("Comillas: \"hola\"") # Comillas dentro del texto
📚 5. Imprimir colecciones
lista = [1, 2, 3]
print("Mi lista es:", lista)
diccionario = {"a": 1, "b": 2}
print("Diccionario:", diccionario)
🧪 Ejemplos combinados
# Impresión formateada y con separador
nombres = ["Ana", "Luis", "Marta"]
print("Nombres:", *nombres, sep=" | ")
# Redirección a archivo
with open("log.txt", "a") as archivo:
print("Evento registrado", file=archivo)
# f-string + múltiples líneas
x = 5
y = 10
print(f"""Valores actuales:
x = {x}
y = {y}
suma = {x + y}
""")
🧠 Resumen de parámetros de print()
Parámetro | Descripción | Valor por defecto |
---|---|---|
sep |
Separador entre elementos | " " |
end |
Qué se imprime al final | "\n" |
file |
A dónde se imprime (stdout o archivo) | sys.stdout |
flush |
Forzar impresión inmediata (True/False) | False |
Vamos a ver cómo formatear números en print()
para que se vean más bonitos o específicos (como con decimales fijos, separadores de miles, porcentaje, etc). Python lo hace fácil con f-strings, format()
y otros métodos.
🟦 1. Redondear decimales
✅ Mostrar 2 decimales:
pi = 3.1415926535
print(f"Pi con 2 decimales: {pi:.2f}") # → Pi con 2 decimales: 3.14
print("Pi con 4 decimales: {:.4f}".format(pi)) # → Pi con 4 decimales: 3.1416
🟦 2. Alinear números
🔹 Alineación derecha, izquierda y centrado
n = 42
print(f"[{n:>5}]") # derecha → [ 42]
print(f"[{n:<5}]") # izquierda → [42 ]
print(f"[{n:^5}]") # centrado → [ 42 ]
🟦 3. Separadores de miles
monto = 1234567.89
print(f"Monto: {monto:,}") # → Monto: 1,234,567.89
print(f"Euro: {monto:,.2f} €") # → Euro: 1,234,567.89 €
Puedes cambiar la coma por punto con el módulo
locale
si quieres formato europeo.
🟦 4. Formato en porcentaje
porcentaje = 0.075
print(f"Descuento: {porcentaje:.2%}") # → Descuento: 7.50%
🟦 5. Hexadecimal, binario y octal
n = 255
print(f"Hex: {n:x}") # ff
print(f"Bin: {n:b}") # 11111111
print(f"Oct: {n:o}") # 377
🧪 Ejercicio práctico
precio = float(input("Ingresa un precio: "))
descuento = 0.15
precio_desc = precio * (1 - descuento)
print(f"\nPrecio original: {precio:,.2f} €")
print(f"Descuento aplicado: {descuento:.0%}")
print(f"Precio final: {precio_desc:,.2f} €")
Más opciones: https://realpython.com/python-print/