logo

Pitón | Formato de salida

En Python, hay varias formas de presentar el resultado de un programa. Los datos pueden imprimirse en un formato legible por humanos, escribirse en un archivo para uso futuro o incluso en alguna otra forma especificada. Los usuarios a menudo desean tener más control sobre el formato de la salida que simplemente imprimir valores separados por espacios.

Formato de salida en Python

Hay varias formas de formatear la salida usando el método String en Pitón .



  • Usando el operador de módulo de cadena (%)
  • Usando el método de formato
  • Usando el método de cadena
  • Regla de conversión de formato de Python

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

El Modulo % operator También se puede utilizar para formatear cadenas. Interpreta el argumento de la izquierda de forma muy parecida a un formato de estilo printf() como en las cadenas de lenguaje C que se aplican al argumento de la derecha. En Python, no existe la función printf() pero la funcionalidad de la antigua printf está contenida en Pitón . Para este propósito, la clase de cadena sobrecarga el operador de módulo % para realizar el formateo de cadena. Por lo tanto, a menudo se le llama operador de módulo de cadena (o, a veces, incluso llamado operador de módulo). 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 antiguo estilo de formato ha sido eliminado del idioma.

Python3








# Python program showing how to use string modulo operator(%)> print>(>'Geeks : %2d, Portal : %5.2f'> %> (>1>,>05.333>))> print>(>'Total students : %3d, Boys : %2d'> %> (>240>,>120>))># print integer value> print>(>'%7.3o'> %> (>25>))># print octal value> print>(>'%10.3E'> %> (>356.08977>))># print exponential value>

>

>

Producción

Geeks : 1, Portal : 5.33 Total students : 240, Boys : 120 031 3.561E+02>
Formateo de salida usando el operador de módulo de cadena (%)

Formateo de salida usando el operador de módulo

programación cobol

Hay dos de ellos en nuestro ejemplo: %2d y %5.2f. La sintaxis general para un marcador de posición de formato es:

 %[flags][width][.precision]type>

Echemos un vistazo a los marcadores de posición en nuestro ejemplo.

  • El primer marcador de posición '%2d' se utiliza para el primer componente de nuestra tupla, es decir, el número entero 1. Se imprimirá con 2 caracteres y, como 1 consta de solo un dígito, la salida se rellena con 1 espacio en blanco al principio.
  • El segundo marcador de posición '%5.2f' es para un número flotante. Al igual que otros marcadores de posición, se introduce con el carácter %. Especifica el número total de dígitos que debe contener la cadena, incluido el punto decimal y todos los dígitos, tanto antes como después del punto decimal.
  • Nuestro número flotante 05.333 tiene el formato de 5 caracteres y una precisión de 2, indicado por el número que sigue al '.' en el marcador de posición. El último carácter 'f' indica que el marcador de posición representa un valor flotante.

Formatear la salida usando el método de formato

El método format() se agregó en Python(2.6). El método de formato de cadenas requiere más esfuerzo manual. Los usuarios usan {} para marcar dónde se sustituirá una variable y pueden proporcionar directivas de formato detalladas, pero el usuario también debe proporcionar la información que se va a formatear. Este método nos permite concatenar elementos dentro de una salida mediante formato posicional. Por ejemplo -

Ejemplo 1: El código explica varias técnicas de formato de cadenas de Python. Los valores se proporcionan explícitamente o se hace referencia a ellos por el orden en que aparecen en el procedimiento format(). Las cadenas f permiten el uso de llaves y el prefijo f para incrustar expresiones dentro de la cadena. literales. Se evalúan las expresiones de las f-Strings y se sustituyen por sus valores apropiados.

Python3

convertir objeto a cadena




print>(>'I love {} for '{}!''>.>format>(>'Geeks'>,>'Geeks'>))> # using format() method and referring a position of the object> print>(>'{0} and {1}'>.>format>(>'Geeks'>,>'Portal'>))> print>(>'{1} and {0}'>.>format>(>'Geeks'>,>'Portal'>))> print>(f>'I love {'Geeks'} for '{'Geeks'}!''>)> # using format() method and referring a position of the object> print>(f>'{'Geeks'} and {'Portal'}'>)>

>

>

Producción

I love Geeks for 'Geeks!' Geeks and Portal Portal and Geeks I love Geeks for 'Geeks!' Geeks and Portal>

Los corchetes y los caracteres dentro de ellos (llamados campos de formato ) se reemplazan con los objetos pasados ​​al método format(). Se puede utilizar un número entre paréntesis para hacer referencia a la posición del objeto pasado al método format().

Ejemplo 2: Con la ayuda de parámetros posicionales y un argumento con nombre ('otro') en la primera línea, los valores 'Geeks', 'For' y 'Geeks' se agregan a la plantilla de cadena.'Geeks:12, Portal: 0.55′ se imprime, con el primer valor apareciendo como un número entero de 2 dígitos y el segundo número con 2 decimales y un ancho de 8 bits. Los argumentos con nombre del método format(), indicados por etiquetas específicas ('a' y 'p') para los números '453' y '59.058',

Python3




# combining positional and keyword arguments> print>(>'Number one portal is {0}, {1}, and {other}.'> >.>format>(>'Geeks'>,>'For'>, other>=>'Geeks'>))> # using format() method with number> print>(>'Geeks :{0:2d}, Portal :{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>(>'Geeks: {a:5d}, Portal: {p:8.2f}'>.> >format>(a>=> 453>, p>=> 59.058>))>

>

>

Producción

Number one portal is Geeks, For, and Geeks. Geeks :12, Portal : 0.55 Second argument: 11, first one: 47.42 Geeks: 453, Portal: 59.06>

El siguiente diagrama con un ejemplo de uso muestra cómo funciona el método de formato para parámetros posicionales:

Formatear la salida usando el método de formato

Formateo de salida usando el método Formato

Ejemplo 3: El código muestra cómo usar diccionarios con el método format() de Python. La 'pestaña' del diccionario en el primer ejemplo tiene claves y valores asociados. El método format() utiliza indexación para colocar los valores en la plantilla de cadena. En el segundo ejemplo, las claves con nombre de un diccionario se utilizan como datos.

Python3


longitud de bash de la cuerda



tab>=> {>'geeks'>:>4127>,>'for'>:>4098>,>'geek'>:>8637678>}> # using format() in dictionary> print>(>'Geeks: {0[geeks]:d}; For: {0[for]:d}; '> >'Geeks: {0[geek]:d}'>.>format>(tab))> data>=> dict>(fun>=>'GeeksForGeeks'>, adj>=>'Portal'>)> print>(>'I love {fun} computer {adj}'>.>format>(>*>*>data))>

>

>

Producción

Geeks: 4127; For: 4098; Geeks: 8637678 I love GeeksForGeeks computer Portal>

Formatear la salida usando el método String

Esta salida está formateada usando método de cadena, es decir operaciones de corte y concatenación. 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 son str.luz() , str.rjust() , y str.centro()

Python3




cstr>=> 'I love geeksforgeeks'> # Printing the center aligned string with fillchr> print>(>'Center aligned string with fillchr: '>)> print>(cstr.center(>40>,>'#'>))> # Printing the left aligned string with '-' padding> print>(>'The left aligned string is : '>)> print>(cstr.ljust(>40>,>'-'>))> # Printing the right aligned string with '-' padding> print>(>'The right aligned string is : '>)> print>(cstr.rjust(>40>,>'-'>))>

>

>

Producción

Center aligned string with fillchr: ##########I love geeksforgeeks########## The left aligned string is : I love geeksforgeeks-------------------- The right aligned string is : --------------------I love geeksforgeeks>

Regla de conversión de formato de Python

Esta tabla enumera las pautas de conversión de formato estándar utilizadas por la función format() de Python.

cadenas concat de java

Conversión

Significado

d

entero decimal

b

formato binario

oh

formato octal

en

Obsoleto y equivalente a 'd'

x o x

formato hexadecimal

mi o mi

Notación exponencial

f o F

decimal de coma flotante

g o G

formato general

C

Carácter único

r

Formato de cadena (usando repr())

s

Formato de cadena (usando str()))

alfabeto de números

%

Porcentaje