Cómo mostrar la salida en la misma línea en Python

Cómo mostrar la salida en la misma línea en Python

Al escribir un script de Python, puede haber casos en los que desee mostrar la salida en la misma línea en lugar de tenerlo en una nueva línea cada vez. Esto puede ser particularmente útil al crear una barra de progreso o actualizar la salida en tiempo real.

En este tutorial, cubriremos los métodos que puede usar para mostrar la salida en la misma línea en Python.

Método 1: usando el fin Argumento en el imprimir() Función

El imprimir() La función en Python le permite especificar el carácter final que sigue la salida. Por defecto, esto se establece en un personaje de NewLine \norte, que hace que la salida se muestre en una nueva línea. Para mantener la salida en la misma línea, podemos especificar un carácter final diferente, como un espacio .

Aquí hay un ejemplo:

imprimir ("hola", end = ") imprimir (" ¿Cómo estás?")
12imprimir ("hola", end = ") imprimir (" ¿Cómo estás?")

La salida de este código será:

Salida: hola, como estas? 

Como puede ver, las dos salidas se muestran en la misma línea.

Método 2: usando el enjuagar Argumento en el imprimir() Función

Otra forma de mostrar la salida en la misma línea es usar el enjuagar argumento en el imprimir() función. Este argumento le dice a Python que enjuague el búfer de salida, lo que significa que la salida se muestra inmediatamente en lugar de almacenarse en un búfer y se muestra más tarde. Para usar este argumento, deberá configurarlo en verdad.

Aquí hay un ejemplo:

import sys print ("hola", end = ", flush = true) print (" ¿Cómo estás?", Flush = True)
123import sysprint ("hola", end = ", flush = true) print (" ¿Cómo estás?", Flush = True)

La salida de este código será la misma que en Método 1, Pero la ventaja de usar el argumento de descarga es que funcionará independientemente del tamaño del búfer de salida.

Método 3: usando el sys.stdout.escribir() Método

Otra forma de mostrar la salida en la misma línea es usar el sys.stdout.escribir() método. Este método escribe en la secuencia de salida estándar (sys.stdout) sin agregar un personaje nuevo al final.

Aquí hay un ejemplo:

importar sys sys.stdout.escribir ("hola") sys.stdout.Escribe ("¿Cómo estás??")
123importar syssys.stdout.escribir ("hola") sys.stdout.Escribe ("¿Cómo estás??")

La salida de este código será:

Salida: hola, como estas? 

Como puede ver, las dos salidas se muestran en la misma línea.

Método 4: Uso de retorno de carro (\ r)

El cuarto método para mostrar la salida en la misma línea es usar un retorno de carro (\ r). Un retorno de carro es un personaje especial que mueve el cursor al comienzo de la línea actual y reemplaza el contenido existente con el nuevo contenido.

Aquí hay un ejemplo:

Tiempo de importación para i en el rango (10): imprime ("\ r progreso: %".Formato (i*10), final = ") tiempo.dormir (1)
1234Importar tiempo para i en el rango (10): imprime ("\ r progreso: %".Formato (i*10), final = ") tiempo.dormir (1)

La salida de este código será:

Salida: Progreso: 90% 

Como puede ver, la barra de progreso se muestra en la misma línea y se actualiza cada segundo.

Conclusión

En este tutorial, cubrimos cuatro métodos para mostrar la salida en la misma línea en Python. Puede elegir el método que mejor se adapte a sus necesidades en función del tipo de salida y el nivel de control que necesita sobre la salida. Ya sea que esté creando una barra de progreso o simplemente desea actualizar la salida en tiempo real, estos métodos lo ayudarán a lograr el resultado deseado.

Es importante tener en cuenta que el sys.stdout.escribir() método y el \ r El carácter son los métodos más directos para controlar la salida en la misma línea, ya que le permiten escribir directamente a la transmisión de salida estándar. Por otro lado, el argumento final en el imprimir() función y el enjuagar El argumento son métodos más simples que pueden ser más fáciles de usar en algunos casos.

En conclusión, con estos métodos, ahora puede controlar fácilmente la visualización de salida en Python, ya sea un principiante o un experto. Pruebe estos métodos en su próximo proyecto de Python y vea los resultados para usted mismo!