Python Formato de string() Explique com EXEMPLOS
O que รฉ a Python Formato de string()?
Python Formato de string() รฉ uma funรงรฃo usada para substituir, substituir ou converter a string por espaรงos reservados com valores vรกlidos na string final. ร uma funรงรฃo integrada do Python classe string, que retorna a string formatada como uma saรญda. Os placeholders dentro da string sรฃo definidos entre chaves.
Por exemplo, โBem-vindo(a) ao Guru99 {}โ.format('valor aqui').
Sintaxe da funรงรฃo format() em Python
templatestring.format(val1, val2...)
Parรขmetros Tรฉcnicos
val1, val2โฆ: Os valores que precisam ser substituรญdos na string de modelo fornecida que possui espaรงos reservados na forma de chaves {}. Os espaรงos reservados podem ser uma string, par chave/valor, nรบmeros inteiros, nรบmeros de ponto flutuante, caracteres, etc.
Valor de retorno
Ele retornarรก a string final, com valores vรกlidos substituรญdos no lugar dos espaรงos reservados fornecidos entre chaves.
Espaรงos reservados
Os espaรงos reservados na string do modelo sรฃo representados usando chaves, por exemplo, {}. O espaรงo reservado pode estar vazio {}, ou pode ter uma variรกvel, por exemplo, {name} , ou pode ter um รญndice numรฉrico, por exemplo, {0} , {1} etc.
Como funciona o formato de string()?
As Python Formato de string() O mรฉtodo verificarรก as strings originais em busca de espaรงos reservados. Os espaรงos reservados podem ser chaves vazias ({}), argumentos posicionais, ou seja, a string pode ter espaรงos reservados com รญndice 0, 1 para, por exemplo, {0}, {1} etc.
Para argumentos de palavra-chave, o nome da variรกvel estarรก presente entre chaves, por exemplo, {nome}, {idade}. No caso de chaves vazias, os valores do formato serรฃo substituรญdos dentro das chaves em sequรชncia.
O primeiro valor serรก substituรญdo pela primeira chave vazia, seguido pelo prรณximo. Para argumentos posicionais, o รญndice comeรงarรก em 0 e assim por diante. Os valores estarรฃo disponรญveis em formato separado por vรญrgula, e o 0th value apontarรก para o primeiro valor dentro do formato e assim por diante.
Para argumentos de palavra-chave, ou seja, quando vocรช usa uma variรกvel dentro de seus espaรงos reservados, vocรช pode ter a ordem dos valores dentro do formato conforme necessรกrio.
A ordem nรฃo importa aqui, pois os valores serรฃo substituรญdos com base no nome da variรกvel presente no format(). Aqui estรฃo alguns exemplos de como usar espaรงos reservados dentro de uma string como vazios, posicionais e usando palavras-chave ou variรกveis.
Exemplo: espaรงo reservado vazio substituรญdo por um valor de string
No exemplo abaixo, a string possui chaves vazias ({}). O valor dado ao formato serรก substituรญdo entre chaves ({}).
O valor que queremos substituir รฉ uma string.
Exemplo:
Usando formataรงรฃo de string em Python, queremos que as chaves ({}) sejam substituรญdas por um valor de string. O valor รฉ fornecido para format(โGuru99โ). Na execuรงรฃo, as chaves {} sรฃo substituรญdas por Guru99, e vocรช receberรก a string final como Bem-vindo ao Guru99 tutoriais.
print ("Welcome to {} tutorials".format("Guru99"))
Saรญda:
Welcome to Guru99 tutorials
Exemplo: espaรงo reservado vazio substituรญdo por um valor numรฉrico
No exemplo abaixo, queremos que o valor numรฉrico seja substituรญdo dentro da string original. As chaves ({}) sรฃo adicionadas ao local onde vocรช precisa do valor numรฉrico. Quando รฉ executado, as chaves vazias ({}) sรฃo substituรญdas pelo valor numรฉrico.
Exemplo:
Vocรช tambรฉm pode usar format() para inserir nรบmeros dentro de sua string. O exemplo mostrarรก como substituir o Placeholder vazio {} pelo nรบmero 99 presente dentro de format().
print ("Welcome to Guru{} Tutorials".format("99"))
Saรญda:
Welcome to Guru99 Tutorials
Exemplo: usando argumentos variรกveis โโou palavras-chave dentro do espaรงo reservado
Tambรฉm รฉ possรญvel fazer uso de variรกveis โโdentro de chaves, como mostra o exemplo abaixo. As variรกveis โโsรฃo definidas dentro de format(). Portanto, ao ser executado, o valor atribuรญdo ร variรกvel รฉ substituรญdo dentro da string original.
Exemplo:
Vocรช pode usar variรกveis โโdentro de chaves, por exemplo, {name} {num}. Os valores das variรกveis โโname e num estรฃo disponรญveis dentro do formato, ou seja, format(name=โGuruโ, num=โ99โณ). Os valores fornecidos para nome e num serรฃo substituรญdos dentro de {nome} e {num}.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Saรญda:
Welcome to Guru99 Tutorials
Exemplo: usando argumentos posicionais ou de รญndice dentro do espaรงo reservado
Os valores podem ser substituรญdos usando รญndices como 0, 1, 2 dentro dos espaรงos reservados. O valor serรก escolhido em ordem no format(), conforme mostrado no exemplo abaixo.
Exemplo:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Saรญda:
Welcome to Guru99 Tutorials
Exemplo: usando vรกrios espaรงos reservados dentro de uma string
Neste exemplo, usaremos vรกrios espaรงos reservados vazios.
Exemplo:
A string usada no exemplo possui vรกrios espaรงos reservados vazios e cada espaรงo reservado se referirรก a um valor dentro de format() . O primeiro valor serรก substituรญdo pelo primeiro espaรงo reservado e assim por diante.
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
Saรญda:
Guru99 is totally new kind of learning experience!
Formataรงรฃo dentro de espaรงos reservados
Vocรช viu que รฉ possรญvel ter o Placeholder vazio, com uma variรกvel ou um รญndice. Tambรฉm รฉ possรญvel que vocรช possa se inscrever Python Formataรงรฃo de string dentro do espaรงo reservado.
Aqui estรก a lista de formatos
| Formato | Descriรงรฃo | Exemplo |
|---|---|---|
:d |
Ele fornecerรก a saรญda em formato decimal quando usado dentro do espaรงo reservado | print("The binary to decimal value is : {:d}".format(0b0011))
Saรญda: The binary to decimal value is : 3 |
:b |
Ele fornecerรก a saรญda em formato binรกrio quando usado dentro do espaรงo reservado | print("The binary value is : {:b}".format(500))
Saรญda: The binary value is : 111110100 |
:e |
Ele fornecerรก a saรญda em formato cientรญfico quando usado dentro do espaรงo reservado, o expoente e na saรญda estarรก em letras minรบsculas. | print("The scientific value is : {:e}".format(40))
Saรญda: The scientific format value is : 4.000000e+01 |
:E |
Ele fornecerรก a saรญda em formato cientรญfico quando usado dentro do espaรงo reservado, o expoente E na saรญda estarรก em maiรบscula | print("The scientific value is : {:E}".format(40))
Saรญda: The scientific value is : 4.000000E+01 |
:f |
Isso produzirรก um formato de nรบmero de ponto fixo. Por padrรฃo, vocรช obterรก a saรญda de qualquer nรบmero com seis casas decimais. Caso precise de atรฉ 2 casas decimais, use como. 2f ou seja. um ponto final (.) na frente de 2f | print("The value is : {:f}".format(40))
Saรญda: The value is : 40.000000 Exemplo: Mostrando saรญda com atรฉ 2 casas decimais.
Saรญda: The value is: 40.00 |
:o |
Isso produzirรก o formato octal | print("The value is : {:o}".format(500))
Saรญda: The value is : 764 |
:x |
Isso produzirรก o formato hexadecimal em letras minรบsculas | print("The value is : {:x}".format(500))
Saรญda: The value is : 1f4 |
:X |
Isso produzirรก o formato hexadecimal em letras maiรบsculas. | print("The value is : {:X}".format(500))
Saรญda: The value is : 1F4 |
:n |
Isso produzirรก o formato numรฉrico. | print("The value is : {:n}".format(500.00))
Saรญda: The value is : 500 |
:% |
Isso fornecerรก a saรญda em formato percentual. Por padrรฃo darรก 6 casas decimais para a saรญda percentual, caso vocรช nรฃo queira nenhum valor decimal vocรช pode usar ponto com 0 ou seja (:.0%). |
print("The value is : {:%}".format(0.80))
Saรญda: The value is : 80.000000% Este exemplo mostra como pular as casas decimais usando {:.0%} dentro do espaรงo reservado.
The value is: 80% |
:_ |
Isso produzirรก um sublinhado como um separador de milhar. Estรก disponรญvel no python 3.6+. | print("The value is {:_}".format(1000000))
Saรญda: The value is : 1_000_000 |
:, |
Isso produzirรก vรญrgula como um separador de milhares | print("The value is : {:,}".format(1000000))
Saรญda: The value is : 1,000,000 A vรญrgula (,) รฉ adicionada como um separador de milhar, conforme mostrado na saรญda. |
: |
Isso adicionarรก um espaรงo antes de qualquer nรบmero positivo | Este exemplo mostra como adicionar espaรงo ou preenchimento antes do nรบmero fornecido. O nรบmero 5 indica a contagem de espaรงos que vocรช deseja antes do nรบmero.
Saรญda: The value is: 40 |
:- |
Isso adicionarรก um sinal de menos antes dos nรบmeros negativos | O exemplo mostra como obter a saรญda com um sinal de menos (-) antes do nรบmero usando {:-}.
Saรญda: The value is: -40 |
:+ |
Vocรช pode usar o sinal de mais para indicar que o nรบmero รฉ positivo | O exemplo mostra como obter a saรญda com um sinal de mais (+) antes do nรบmero usando {:+}.
Saรญda: The value is: +40 |
:= |
O igual a รฉ usado para colocar o sinal +/- no lado esquerdo. | O exemplo mostra como obter a saรญda com um sinal de mais (+/-) antes do sinal de igual usando {:=}.
Saรญda: The value is -40 |
:^ |
Isso centralizarรก o resultado final | O exemplo mostra como usar {:^} para centralizar o texto. O nรบmero 10 รฉ usado para adicionar 10 espaรงos para mostrar o alinhamento central quando o valor รฉ substituรญdo.
Saรญda: The value 40 is a positive value Aqui vocรช pode usar 10 que adicionarรก 10 espaรงos no texto final, e o valor a ser substituรญdo serรก alinhado ao centro entre os 10 espaรงos. Os espaรงos de 10 sรฃo adicionados apenas para mostrar o alinhamento central do valor substituรญdo. |
:> |
Isso alinharรก ร direita o resultado final | O espaรงo de 10 รฉ adicionado usando (:>10) e o valor substituรญdo รฉ alinhado ร direita.
Saรญda: The value 40 is positive value |
:< |
Isso alinharรก ร esquerda o resultado final | O espaรงo de 10 รฉ adicionado usando (:<10) e o valor substituรญdo รฉ alinhado ร esquerda.
Saรญda: The value 40 is positive value |
Usando classe com format()
Neste exemplo, estamos criando uma classe e usamos o objeto da classe dentro do .format Python mรฉtodo. Os espaรงos reservados se referirรฃo ร s propriedades ou membros da classe que usam o objeto de classe.
Exemplo:
A classe รฉ chamada dentro do formato (c=MinhaClasse()). O objeto c terรก a referรชncia ร s propriedades e mรฉtodos dentro da classe MinhaClasse().
class MyClass:
msg1="Guru"
msg2="Tutorials"
print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Saรญda:
Welcome to Guru99 Tutorials!
Usando dicionรกrio com format()
Tambรฉm รฉ possรญvel fazer uso de dicionรกrio dentro de format() conforme mostrado no exemplo abaixo:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Saรญda:
Welcome to Guru99 Tutorials!
Substituiรงรตes de variรกveis โโde preenchimento
Usando o mรฉtodo string.format(), vocรช pode adicionar preenchimento e espaรงo usando espaรงos reservados dentro de sua string.
Exemplo:
No exemplo abaixo irรก adicionar espaรงo dentro do Placeholder usando o format(). Para adicionar espaรงo, vocรช deve especificar o nรบmero de espaรงos entre chaves apรณs os dois pontos (:). Portanto, o espaรงo reservado serรก semelhante a {:5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
Saรญda:
I have 2 dogs and 1 cat
Vocรช tambรฉm pode fornecer o รญndice dentro do espaรงo reservado, por exemplo: {0:5} onde 0 se referirรก ao primeiro valor dentro do formato.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Saรญda:
I have 2 dogs and 1 cat
Resumo
- Python A classe string nos fornece um importante comando integrado chamado format() que nos ajuda a substituir, substituir ou converter a string por espaรงos reservados com valores vรกlidos na string final.
- Os espaรงos reservados dentro do mรณdulo string Python sรฃo definidos entre chaves, por exemplo, โBem-vindo ao Guru99 {}โ.format('valor aqui').
- O espaรงo reservado pode estar vazio {}, ou pode ter uma variรกvel, por exemplo, {name} , ou pode ter um รญndice numรฉrico, por exemplo, {0} , {1} etc.
- Vocรช pode usar a formataรงรฃo de strings em Python espaรงos reservados internos que podem ajudar a adicionar preenchimento, alinhar centralmente e tambรฉm ajudar na formataรงรฃo de nรบmeros.
