logo

Formato de salida de Python

En este tutorial, aprenderemos a formatear la salida. El formato y la salida se refieren a la presentación del resultado de un programa. Podemos formatear la salida en una forma legible por humanos o escribir los datos en un archivo y alguna otra forma especificada. A veces necesitamos controlar la salida entrante para poder formatearla según nuestros requisitos. Los usuarios pueden manejar cadenas mediante operaciones de corte y concatenación de cadenas para crear cualquier diseño.

Hay varias formas de formatear la salida.

  • Podemos usar el método de cadena f para formatear los literales de cadena.
  • El formato() El método de cadenas ayuda al usuario a crear una salida más elegante.
  • También podemos realizar operaciones de concatenación de cadenas para crear cualquier diseño que queramos. La clase de cadena también tiene algunos métodos que realizan operaciones útiles para rellenar cadenas hasta un ancho de columna determinado.

Formateo de salida usando el operador de módulo de cadena (%)

El operador % nos ayuda a formatear la cadena. Interpreta el argumento de la izquierda como imprimirf() cadena de formato aplicada al argumento correcto. Python no proporciona la imprimirf() función. Para este propósito, la clase de cadena sobrecarga el operador de módulo para realizar el formato de cadena. También se le conoce como operador String Modulo.

El operador de módulo de cadena todavía está disponible en Python (3.x) y se usa ampliamente, pero hoy en día, el estilo de formato antiguo se elimina del lenguaje.

Entendamos el siguiente ejemplo:

Ejemplo -

 #integer and float value print('integer : % 2d, float : % 5.2f' %(1, 05.333)) #integer value print('Total Player : % 3d, Batsman : % 2d' %(24, 12)) #octal value print('% 5.3o'% (50)) #exponential value print('% 10.2E'% (456.1458)) 

Producción:

 integer : 1, float : 5.33 Total Player : 24, Batsman : 12 062 4.56E+02 

Explicación -

En el código anterior, '%2d' es un marcador de posición que utiliza el primer elemento de la tupla. Imprime los dos caracteres. Para la descripción del formato del número flotante, se utiliza '%5.2f'. También se introduce con el carácter % como otros marcadores de posición. Muestra el número total de cadenas que puede contener. La parte decimal del número o la precisión se establece en 2, el número que sigue a '.' en el marcador de posición. El último carácter, 'f', muestra un número flotante.

Formatear la salida usando el método de formato

El formato() El método requiere más esfuerzo manual que otros métodos. Usamos {} para marcar la sustitución de variables y proporcionar directivas de formato detalladas, pero también debemos proporcionar la información formateada. Podemos usar el número entre paréntesis como formato posicional. Entendamos el siguiente ejemplo.

Ejemplo -

 # using format() method print('{} {}'.format('Hello', 'World')) # using format() method and referring # a position of the object print('{0} to {1}'.format('Welcome', 'JavaTpoint')) print('{1} to {0}'.format('Welcome', 'JavaTpoint')) 

Producción:

 Hello World Welcome to JavaTpoint JavaTpoint to Welcome 

Los corchetes y caracteres dentro del elemento se denominan campos de formato que se reemplazan con el objeto pasado al formato() método. Se puede utilizar un número entre paréntesis para hacer referencia a la posición del objeto pasada al método format().

Entendamos otro ejemplo:

Ejemplo -

 print('Number one position is {0}, {1}, and {other}.' .format('Java', 'T', other ='Point')) # using format() method with number print('Java :{0:2d}, Tpoint :{1:8.2f}'. format(12, 00.546)) # Changing positional argument print('Second argument: {1:3d}, first one: {0:7.2f}'. format(47.42, 11)) print('Java: {a:5d}, Tpoint: {p:8.2f}'. format(a = 453, p = 59.058)) 

Producción:

 Number one position is Java, T, and Point. Java :12, Tpoint : 0.55 Second argument: 11, first one: 47.42 Java: 453, Tpoint: 59.06 

Ejemplo - 3:

 tab = {'Java': 4127, 'T': 4098, 'point': 8637678} # using format() in dictionary print('Java: {0[Java]:d}; For: {0[T]:d}; ' 'Java: {0[Java]:d}'.format(tab)) data = dict(fun ='JavaTpoint', adj ='Website') # using format() in dictionary print('I love {fun} {adj}'.format(**data)) 

Producción:

 Java: 4127; For: 4098; Java: 4127 I love JavaTpoint Website 

Formatear la salida usando el método String

También podemos formatear la salida utilizando las operaciones de concatenación y corte de cadenas. El tipo de cadena tiene algunos métodos que ayudan a formatear la salida de una manera más elegante. Algunos métodos que ayudan a formatear una salida: str.luz(), str.rjust(), y str.centro(). Entendamos el siguiente ejemplo:

Ejemplo -

 str1 = 'I love JavaTpoint' # Printing the center aligned # string with fillchr print ('Center aligned string with fillchr: ') print (str1.center(30, '$')) # Printing the left aligned # string with '-' padding print ('The left aligned string is : ') print (str1.ljust(40, '&')) # Printing the right aligned string # with '-' padding print ('The right aligned string is : ') print (str1.rjust(40, '-')) 

Producción:

 Center aligned string with fillchr: $$$$$$I love JavaTpoint$$$$$$$ The left aligned string is: I love JavaTpoint&&&&&&&&&&&&&&&&&&&&&&& The right aligned string is : -----------------------I love JavaTpoint 

Regla de conversión de formato en Python

A continuación se muestra la tabla de conversión y su significado.

Conversión Significado
d Representa un decimal entero con signo.
i Representa un decimal entero con signo.
oh Representa octal sin firmar.
en Representa Obsoleto y equivalente a 'd', es decir, decimal entero con signo.
X Representa un hexadecimal sin signo (minúscula).
X Representa un hexadecimal sin signo (mayúscula).
Es Representa el formato exponencial de punto flotante (minúsculas).
Y Representa el formato exponencial de punto flotante (mayúsculas).
F Representa un formato decimal de coma flotante.
F Representa un formato decimal de coma flotante.
gramo Representa lo mismo que 'e' si el exponente es mayor que -4 o menor que la precisión, 'f' en caso contrario.
GRAMO Representa lo mismo que 'E' si el exponente es mayor que -4 o menor que la precisión, 'F' en caso contrario.
C Representa un solo carácter (acepta números enteros o cadenas de un solo carácter).
r Representa String (convierte cualquier objeto de Python usando repr()).
s Representa String (convierte cualquier objeto de Python usando str()).
% Representa que ningún argumento se convierte, da como resultado un carácter '%' en el resultado.

Conclusión

Hemos discutido cómo formatear la salida en Python. Hemos descrito las diversas técnicas junto con ejemplos. Python proporciona la posibilidad de modificar la salida según los requisitos. Los usuarios pueden utilizar cadenas o formato() Métodos con argumentos posicionales. Este tutorial también incluyó la tabla de reglas de conversión.