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.