logo

Formatação de saída Python

Neste tutorial, aprenderemos como formatar a saída. Formatação e saída referem-se à apresentação da saída de um programa. Podemos formatar a saída em um formato legível por humanos ou gravar os dados em um arquivo e em algum outro formato especificado. Às vezes precisamos controlar a saída que vem para que possamos formatá-la de acordo com nossos requisitos. Os usuários podem manipular strings usando operações de divisão e concatenação de strings para criar qualquer layout.

Existem várias maneiras de formatar a saída.

  • Podemos usar o método f string para formatar os literais de string.
  • O formatar() O método de strings ajuda o usuário a criar uma saída mais sofisticada.
  • Também podemos realizar operações de concatenação de strings para criar qualquer layout que desejarmos. A classe string também possui alguns métodos que realizam operações úteis para preencher strings até uma determinada largura de coluna.

Formatando a saída usando o operador String Module (%)

O operador % nos ajuda a formatar a string. Ele interpreta o argumento esquerdo como imprimirf() string de formato aplicada ao argumento correto. Python não fornece o imprimirf() função. Para isso, o operador módulo é sobrecarregado pela classe string para realizar a formatação da string. Também é conhecido como operador String Módulo.

O operador módulo de string ainda está disponível em Python (3.x) e é amplamente utilizado, mas hoje em dia o antigo estilo de formatação foi removido da linguagem.

Vamos entender o seguinte exemplo -

Exemplo -

 #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)) 

Saída:

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

Explicação -

No código acima, '%2d' é um espaço reservado que usa o primeiro elemento da tupla. Ele imprime os dois caracteres. Para a descrição do formato do número flutuante, '%5.2f' é usado. Também é introduzido com o caractere% como outros espaços reservados. Mostra o número total de strings que pode conter. A parte decimal do número ou a precisão é definida como 2, o número após '.' no espaço reservado. O último caractere, 'f' mostra um número flutuante.

Formatando a saída usando o método Format

O formatar() método exige mais esforço manual do que outros métodos. Usamos {} para marcar a substituição de variáveis ​​e fornecer diretivas de formatação detalhadas, mas também precisamos fornecer as informações formatadas. Podemos usar o número entre colchetes como formatação posicional. Vamos entender o exemplo a seguir.

Exemplo -

 # 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')) 

Saída:

 Hello World Welcome to JavaTpoint JavaTpoint to Welcome 

Os colchetes e caracteres dentro do item são chamados de campos de formato que são substituídos pelo objeto passado para o formatar() método. Um número entre colchetes pode ser usado para se referir à posição do objeto passado para o método format().

Vamos entender outro exemplo -

Exemplo -

 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)) 

Saída:

 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 

Exemplo - 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)) 

Saída:

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

Formatando a saída usando o método String

Também podemos formatar a saída usando as operações de divisão e concatenação de strings. O tipo string possui alguns métodos que ajudam a formatar a saída de uma forma mais sofisticada. Poucos métodos que ajudam a formatar uma saída - str.luz(), str.rjust(), e str.centro(). Vamos entender o seguinte exemplo -

Exemplo -

 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, '-')) 

Saída:

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

Regra de conversão de formato em Python

Abaixo está a tabela da conversão e seu significado.

Conversão Significado
d Representa um decimal inteiro assinado.
eu Representa um decimal inteiro assinado.
o Representa octal não assinado.
em Representa obsoleto e equivalente a 'd', ou seja, número inteiro assinado decimal.
x Representa um hexadecimal não assinado (minúsculas).
X Representa um hexadecimal não assinado (maiúsculas).
e Representa o formato exponencial de ponto flutuante (minúsculas).
E Representa o formato exponencial de ponto flutuante (maiúsculas).
f Representa um formato decimal de ponto flutuante.
F Representa um formato decimal de ponto flutuante.
g Representa o mesmo que 'e' se o expoente for maior que -4 ou menor que a precisão, 'f' caso contrário.
G Representa o mesmo que 'E' se o expoente for maior que -4 ou menor que a precisão, 'F' caso contrário.
c Representa um caractere único (aceita um número inteiro ou uma string de caractere único).
R Representa String (converte qualquer objeto python usando repr()).
é Representa String (converte qualquer objeto python usando str()).
% Representa Nenhum argumento convertido, resultando em um caractere '%' no resultado.

Conclusão

Discutimos como formatar a saída em Python. Descrevemos as várias técnicas juntamente com exemplos. Python fornece a facilidade de modificar a saída de acordo com os requisitos. Os usuários podem usar string ou formatar() métodos com argumentos posicionais. Este tutorial também incluiu a tabela de regras de conversão.