- 1 1. Introducción
- 2 2. ¿Qué es la función print() de Python?
- 3 3. Diferencias entre println() de Java y print() de Python
- 4 4. print() Aplicaciones de la función
- 4.1 4.1 Salida de múltiples valores con la función print()
- 4.2 4.2 Formato de cadenas con la función print()
- 4.3 4.3 Evitar saltos de línea con la función print()
- 4.4 4.4 Cambiar el separador con la función print()
- 4.5 4.5 Salida a un archivo con la función print()
- 4.6 4.6 Salida sin búfer de la función print() (salida en tiempo real)
- 4.7 4.7 Guardar la salida de la función print() en una variable (uso de sys.stdout)
- 5 5. print() Puntos de atención y mejores prácticas de la función
- 5.1 5.1 Puntos de atención al usar la función print()
- 5.2 5.2 Mejores prácticas de la función print()
- 5.3 Resumen
- 6 6. print() Preguntas frecuentes (FAQ) sobre la función
- 6.1 Q1: ¿Existe la función println en Python?
- 6.2 Q2: ¿Cómo evitar el salto de línea en la función print()?
- 6.3 Q3: ¿Se puede reproducir exactamente la misma acción que println() de Java en Python?
- 6.4 Q4: ¿Cómo generar salida de múltiples variables con print()?
- 6.5 Q5: ¿Cómo escribir la salida de print() en un archivo?
- 6.6 Q6: ¿Cómo generar salida estándar sin usar print()?
- 6.7 Q7: ¿Por qué ocurre un error al usar print()?
- 6.8 Q8: ¿Cómo depurar sin usar print()?
- 7 7. Resumen
- 7.1 7.1 Lo básico de la función print() de Python
- 7.2 7.2 Diferencias entre println() de Java y print() de Python
- 7.3 7.3 Aplicaciones de la función print()
- 7.4 7.4 Puntos de atención de la función print()
- 7.5 7.5 Resumen de preguntas frecuentes (FAQ)
- 7.6 7.6 Temas relacionados que aprender a continuación
- 7.7 7.7 Resumen
1. Introducción
Al aprender Python, es posible que pienses: «¿No hay una función println
?». Para quienes están acostumbrados a lenguajes de programación como Java, es natural sentir que debe haber un mecanismo de salida estándar como System.out.println()
. Sin embargo, Python no tiene una función llamada println()
, y en su lugar utiliza la función print()
.
En este artículo, explicaremos en detalle cómo usar la función print()
de Python, así como las diferencias con println()
de Java, y también usos avanzados de la función print()
.
2. ¿Qué es la función print()
de Python?
Para realizar la salida estándar en Python, se utiliza la función print()
. Esta función imprime los datos especificados y, por defecto, agrega una nueva línea al final.
Forma básica de uso de la función print()
La forma más básica de uso es pasar una cadena a la función print()
para mostrarla en pantalla.
print("Hello, World!")
Resultado de la ejecución
Hello, World!
Imprimir múltiples cadenas a la vez
La función print()
puede recibir múltiples argumentos, que se imprimen separados automáticamente por espacios.
print("Hello", "Python", "World")
Resultado de la ejecución
Hello Python World
Salida usando variables
También es fácil imprimir usando variables.
name = "Alice"
age = 25
print("Nombre:", name, "Edad:", age)
Resultado de la ejecución
Nombre: Alice Edad: 25
Características de la función print()
- Puede mostrar cadenas o números en la salida estándar.
- Si se pasan múltiples argumentos, se separan con espacios.
- Por defecto, se agrega una nueva línea (puede cambiarse).___.
3. Diferencias entre println()
de Java y print()
de Python
Si has estudiado Java, probablemente sientas que la función print()
de Python es similar a System.out.println()
de Java. Sin embargo, hay diferencias sutiles.
Uso de println()
en Java
En Java, para la salida estándar se usa System.out.println()
. Si se escribe como a continuación, se mostrará «Hello, World!» en la pantalla, seguido de un salto de línea.
System.out.println("Hello, World!");
Además, si se desea salida sin salto de línea, se usa System.out.print()
.
System.out.print("Hello");
System.out.print(" World");
Resultado de la ejecución
Hello World
Diferencias con print()
de Python
La función print()
de Python también agrega un salto de línea por defecto, pero se puede evitar usando el argumento end
.
print("Hello", end="")
print(" World")
Resultado de la ejecución
Hello World
De esta manera, en Java se distinguen println()
y print()
, pero en Python se puede lograr lo mismo utilizando la opción end
de print()
.
Tabla de comparación de la salida estándar en Java y Python
Lenguaje | Función de salida estándar | Con salto de línea | Método sin salto de línea |
---|---|---|---|
Python | print("text") | Sí | print("text", end="") |
Java | System.out.println("text") | Sí | System.out.print("text") |
De esta manera, print()
de Python se puede personalizar de manera flexible, y es posible reproducir casi el mismo comportamiento que println()
de Java.
4. print()
Aplicaciones de la función
La función print()
de Python no solo muestra texto en la pantalla, sino que al aprovechar diversas opciones permite una salida más flexible. En esta sección, explicamos en detalle los usos avanzados de la función print()
.
4.1 Salida de múltiples valores con la función print()
Con la función print()
, se pueden pasar múltiples valores usando comas (,
). Los valores separados por comas se separan por defecto con espacios en la salida.
Ejemplo
print("Python", "is", "awesome")
Resultado de la ejecución
Python is awesome
También es posible mezclar números y cadenas en la salida.
age = 25
print("Tengo", age, "años")
Resultado de la ejecución
Tengo 25 años
4.2 Formato de cadenas con la función print()
En Python, hay varias formas de formatear cadenas para su salida.
(1) Usar el método format()
name = "Alice"
age = 25
print("Nombre: {}, Edad: {}".format(name, age))
Resultado de la ejecución
Nombre: Alice, Edad: 25
(2) Cadenas f (recomendado desde Python 3.6)
name = "Alice"
age = 25
print(f"Nombre: {name}, Edad: {age}")
Resultado de la ejecución
Nombre: Alice, Edad: 25
✅ ¡Usar las cadenas f
mejora la legibilidad y es fácil de entender de manera intuitiva!
4.3 Evitar saltos de línea con la función print()
Por defecto, la función print()
agrega automáticamente un salto de línea después de la salida. Sin embargo, si se desea salir sin salto de línea, se puede controlar usando el parámetro end
.
Ejemplo
print("Hello", end="")
print(" World")
Resultado de la ejecución
Hello World
✅ ¡Usar end=""
es conveniente para salida continua de cadenas!
4.4 Cambiar el separador con la función print()
Normalmente, al salir múltiples argumentos con la función print()
, se separan con espacios. Sin embargo, se puede personalizar usando el parámetro sep
.
Ejemplo
print("Python", "Java", "C++", sep=", ")
Resultado de la ejecución
Python, Java, C++
✅ ¡Es conveniente cuando se desea separar datos con comas o barras!
4.5 Salida a un archivo con la función print()
Usando el parámetro file
de la función print()
, se puede escribir la salida en un archivo en lugar de en la pantalla.
Ejemplo
with open("output.txt", "w") as f:
print("Esto se imprimirá en el archivo.", file=f)
✅ ¡Al especificar file=f
, es posible escribir la salida de print()
en un archivo!
4.6 Salida sin búfer de la función print()
(salida en tiempo real)
Normalmente, la función print()
de Python realiza búfer (salida agrupada de una cierta cantidad de datos), pero al especificar flush=True
, se sale de inmediato en tiempo real.
Ejemplo
import time
for i in range(5):
print(i, end=" ", flush=True)
time.sleep(1)
Resultado de la ejecución (se muestra cada segundo)
0 1 2 3 4
✅ ¡Es conveniente cuando se desea verificar la salida en tiempo real!
4.7 Guardar la salida de la función print()
en una variable (uso de sys.stdout
)
Normalmente, la salida de la función print()
se muestra en la pantalla, pero usando sys.stdout
, también es posible almacenar el contenido de la salida en una variable.
Ejemplo
import sys
from io import StringIO
# Capturar la salida temporalmente
old_stdout = sys.stdout
sys.stdout = mystdout = StringIO()
print("Salida capturada")
# Obtener el contenido capturado
sys.stdout = old_stdout # Restaurar la salida estándar original
output = mystdout.getvalue()
print("Salida guardada:", output)
Resultado de la ejecución
Salida guardada: Salida capturada
✅ ¡Es una técnica conveniente para registrar la salida de un programa!
5. print()
Puntos de atención y mejores prácticas de la función
La función print()
de Python es muy conveniente y fácil de usar, pero si no se utiliza adecuadamente, puede llevar a una disminución del rendimiento o dificultades en la depuración. En esta sección, explicamos los puntos de atención de la función print()
y las mejores prácticas para usarla de manera más efectiva.
5.1 Puntos de atención al usar la función print()
(1) Realizar una gran cantidad de salida reduce el rendimiento
Usar la función print()
en grandes cantidades puede ralentizar la velocidad de ejecución del programa. Esto se debe a que la función print()
realiza procesamiento de E/S (entrada/salida) y toma tiempo outputting a la consola o al log.
❌ Código que debe evitarse
for i in range(1000000):
print(i) # Debido a que escribe en la salida estándar cada vez, es muy lento
✅ Método de mejora
output = "\n".join(str(i) for i in range(1000000))
print(output)
✅ ¡Usar join()
permite una salida eficiente y en bloque de grandes cantidades de datos!
(2) No abusar del print()
para depuración
Durante el desarrollo, es común usar print()
para depuración, pero es más efectivo utilizar métodos dedicados a la depuración.
❌ Código que debe evitarse
print("Mensaje de depuración: variable x =", x)
✅ Método usando el módulo logging
import logging
logging.basicConfig(level=logging.DEBUG)
x = 10
logging.debug(f"Mensaje de depuración: variable x = {x}")
✅ ¡Usar print()
en lugar de logging
permite la gestión de logs por niveles!
(3) Gestionar explícitamente el destino de salida de print()
Normalmente, la función print()
muestra datos en la salida estándar (consola), pero utilizando el parámetro file
, se puede cambiar el destino de salida.
Guardado de log en archivo
with open("log.txt", "w") as f:
print("Este log se guarda en el archivo", file=f)
✅ ¡Escribir la salida en un archivo en lugar de la consola facilita la gestión de logs!
5.2 Mejores prácticas de la función print()
(1) Aprovechar las f-cadenas (f-strings)
Desde Python 3.6, se recomienda el formato usando f
. Esto mejora la legibilidad y simplifica el formateo de cadenas.
❌ Código que debe evitarse
print("Nombre: " + name + ", Edad: " + str(age))
✅ Método de mejora
print(f"Nombre: {name}, Edad: {age}")
✅ ¡Usar f
resulta en un código más intuitivo y conciso!
(2) Aprovechar el parámetro end
para evitar saltos de línea innecesarios
Por defecto, la función print()
agrega un salto de línea después de la salida, pero utilizando el parámetro end
, se puede suprimir el salto de línea para una salida continua.
❌ Código que debe evitarse
print("Procesando...")
print("¡Completado!")
✅ Método de mejora
print("Procesando...", end="")
print("¡Completado!")
Resultado de salida
Procesando...¡Completado!
✅ ¡Reduce los saltos de línea innecesarios para una salida más limpia!
(3) Aprovechar el parámetro sep
para establecer un delimitador personalizado
Por defecto, los argumentos de la función print()
se separan por espacios, pero usando sep
, se puede establecer un delimitador arbitrario.
Ejemplo: Separación por comas
print("Apple", "Banana", "Cherry", sep=", ")
Resultado de salida
Apple, Banana, Cherry
✅ ¡Conveniente cuando se desea formatear los datos!
(4) Procesamiento en tiempo real de la salida (flush=True
)
Normalmente, la salida de print()
se almacena en búfer y se emite en bloque. Si se desea salida en tiempo real, especificar flush=True
fuerza la salida inmediata.
Ejemplo
import time
for i in range(3):
print(f"Procesando {i+1}/3...", end="\r", flush=True)
time.sleep(1)
Salida (sobrescritura cada segundo)
Procesando 1/3...
Procesando 2/3...
Procesando 3/3...
✅ ¡Ideal para mostrar el progreso en tiempo real!
Resumen
En esta sección, explicamos los puntos de atención y las mejores prácticas de la función print()
.
⚠ Puntos de atención de la función print()
- Una gran cantidad de salida lleva a una disminución del rendimiento (se acelera usando
join()
) - No abusar durante la depuración (es más fácil de gestionar usando
logging
) - Tener en cuenta el destino de salida (usar el parámetro
file
para salida a archivo)
✅ Mejores prácticas de la función print()
- Usar cadenas
f
para un formateo simple - Aprovechar
end
para evitar saltos de línea innecesarios - Aprovechar
sep
para personalizar la salida - Usar
flush=True
para salida en tiempo real
Al dominar adecuadamente la función print()
, se puede manejar la salida estándar de Python de manera más eficiente.

6. print()
Preguntas frecuentes (FAQ) sobre la función
La función print()
de Python es simple y fácil de usar, pero hay puntos en los que los principiantes pueden tropezar. Aquí hemos resumido las preguntas comunes y sus respuestas.
Q1: ¿Existe la función println
en Python?
A1: No, no existe la función println()
en Python. En su lugar, utilice la función print()
.
Al igual que System.out.println()
de Java, la acción de agregar un salto de línea después de la salida es el comportamiento predeterminado de la función print()
de Python.
Ejemplo en Python
print("Hello, World!") # Se agrega un salto de línea por defecto
Ejemplo en Java
System.out.println("Hello, World!"); // Se agrega un salto de línea por defecto
➡ La función print()
de Python realiza la misma acción que println()
de Java de forma estándar!
Q2: ¿Cómo evitar el salto de línea en la función print()
?
A2: Puede evitar el salto de línea utilizando el parámetro end
de la función print()
.
Ejemplo
print("Hello", end="")
print(" World")
Salida
Hello World
➡ ¡Usando end=""
es posible generar salida sin salto de línea!
Q3: ¿Se puede reproducir exactamente la misma acción que println()
de Java en Python?
A3: Sí, en Python es posible lograr exactamente la misma acción que println()
de Java utilizando la opción end
de print()
.
Ejemplo
print("Hello, World!", end="\n") # Salto de línea explícito
➡ ¡Especificando end="\n"
se logra la misma acción que println()
de Java!
Q4: ¿Cómo generar salida de múltiples variables con print()
?
A4: Puede generar salida de múltiples variables a la vez separándolas con comas (,
).
Ejemplo
name = "Alice"
age = 25
print("Nombre:", name, "Edad:", age)
Salida
Nombre: Alice Edad: 25
Además, si desea formatear mejor, es conveniente usar cadenas f (f-strings).
print(f"Nombre: {name}, Edad: {age}")
➡ ¡Usar cadenas f es más intuitivo y claro!
Q5: ¿Cómo escribir la salida de print()
en un archivo?
A5: Utilizando el parámetro file
, puede guardar la salida de print()
en un archivo.
Ejemplo
with open("output.txt", "w") as f:
print("Este es el contenido que se guarda en el archivo", file=f)
✅ ¡Para generar salida en un archivo, solo especifique file=f
y listo!
Q6: ¿Cómo generar salida estándar sin usar print()
?
A6: Puede generar salida estándar sin print()
utilizando sys.stdout.write()
.
Ejemplo
import sys
sys.stdout.write("Hello, World!\n")
➡ ¡Usar sys.stdout.write()
permite un control más fino que print()
!
Q7: ¿Por qué ocurre un error al usar print()
?
A7: A continuación, se presentan los errores principales que ocurren al usar print()
y sus soluciones.
(1) TypeError: can only concatenate str (not "int") to str
Causa: Ocurre cuando se intenta concatenar una cadena y un número con +
en print()
_
print("Edad: " + 25) # ¡Error!
Solución: Convierta el número a cadena con str()
print("Edad: " + str(25)) # Forma correcta
(2) SyntaxError: Missing parentheses in call to 'print'
Causa: Ocurre al ejecutar código de Python 2 en Python 3
print "Hello, World!" # Forma de Python 2
Solución: En Python 3, es necesario agregar ()
print("Hello, World!") # Forma correcta
✅ ¡En Python 3, siempre agregue ()
a print
!
Q8: ¿Cómo depurar sin usar print()
?
A8: En lugar de usar print()
, se recomienda utilizar el módulo logging
.
Ejemplo
import logging
logging.basicConfig(level=logging.DEBUG)
x = 42
logging.debug(f"Valor de la variable x: {x}")
➡ ¡Usar logging
permite gestionar adecuadamente la información de depuración!
7. Resumen
En este artículo, hemos explicado en detalle desde lo básico hasta lo avanzado de la función print()
de Python, las diferencias con println()
de Java, cómo utilizar opciones convenientes, mejores prácticas y preguntas frecuentes (FAQ). Aquí, repasemos los puntos importantes.
7.1 Lo básico de la función print()
de Python
- En Python, no existe la función
println()
, en su lugar se utiliza la funciónprint()
. - La
print()
por defecto incluye una nueva línea en la salida.
print("Hello, World!") # Salida con nueva línea después
- Posible salida de múltiples valores simultáneamente (separados por espacios)
print("Python", "is", "awesome")
7.2 Diferencias entre println()
de Java y print()
de Python
Lenguaje | Función de salida estándar | Con nueva línea | Método sin nueva línea |
---|---|---|---|
Python | print("text") | Sí | print("text", end="") |
Java | System.out.println("text") | Sí | System.out.print("text") |
✅ La print()
de Python tiene la misma funcionalidad que println()
de Java
✅ Cubre desde el uso básico hasta lo avanzado de print()
7.3 Aplicaciones de la función print()
Función | Método | Ejemplo de código |
---|---|---|
Evitar nueva línea | Utilizar end | print("Hello", end="") |
Separador personalizado | Utilizar sep | print("Python", "Java", sep=", ") |
Formato de cadena | Se recomienda f-cadena | print(f"Nombre: {name}, Edad: {age}") |
Salida a archivo | Parámetro file | print("Registrar log", file=open("log.txt", "w")) |
Salida en tiempo real | Utilizar flush=True | print("Procesando...", flush=True) |
✅ ¡Al utilizar las opciones de print()
, es posible una salida más flexible!
7.4 Puntos de atención de la función print()
- Una salida masiva afecta el rendimiento
output = "\n".join(str(i) for i in range(1000000))
print(output) # Salida en bloque para mayor velocidad
- Para depuración, utilizar
print()
menos ylogging
más
import logging
logging.basicConfig(level=logging.INFO)
logging.info("Mensaje de depuración")
- Para salida fuera de la salida estándar, utilizar
sys.stdout
import sys
sys.stdout.write("Hello, World!\n")
✅ ¡Al seleccionar el método adecuado, se puede escribir código más eficiente!
7.5 Resumen de preguntas frecuentes (FAQ)
Pregunta | Respuesta |
---|---|
¿Existe println() en Python? | No, en Python se utiliza print() . |
¿Cómo evitar la nueva línea? | Utilizar print("Hello", end="") . |
¿Cómo lograr el mismo comportamiento que println() de Java? | Utilizar print(text, end="\n") . |
¿Cómo salir a un archivo? | print("Contenido", file=open("file.txt", "w")) |
Medidas contra errores (como TypeError ) | Convertir números a cadenas (str() ). |
¿Debería usarse print() para depuración? | Se recomienda logging . |
✅ ¡Al resolver dudas comunes, se puede dominar print()
de manera más fluida!
7.6 Temas relacionados que aprender a continuación
Después de entender la función print()
de Python, introducimos temas importantes que aprender a continuación.
- Gestión de logs con el módulo
logging
import logging
logging.basicConfig(level=logging.INFO)
logging.info("Este es un log INFO")
- Entrada y salida estándar (
sys.stdin
,sys.stdout
,sys.stderr
)
import sys
sys.stdout.write("Hello, World!\n")
- Uso de entrada y salida de archivos (
open()
)
with open("output.txt", "w") as f:
f.write("Ejemplo de salida a archivo")
- Técnicas de depuración en Python
import pdb; pdb.set_trace() # Establecer punto de interrupción aquí
✅ ¡Al aprender estos temas, se puede controlar la salida de Python con mayor libertad!
7.7 Resumen
✅ La print()
de Python tiene la misma funcionalidad que println()
de Java
✅ Cubre desde el uso básico hasta lo avanzado de print()
✅ Al utilizar end
o sep
, es posible una salida flexible
✅ Es importante seleccionar el método adecuado considerando la depuración y el rendimiento