Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Domine Strings format() em Python com Exemplos Claros

O que é Python String format()?

Python String format() é uma função usada para substituir, substituir ou converter a string com placeholders por valores válidos na string final. É uma função embutida da classe string do Python, que retorna a string formatada como saída. Os placeholders dentro da string são definidos entre chaves.

Por exemplo, "Bem-vindo ao Guru99 {}".format('valor aqui').

Neste tutorial, você aprenderá:

Sintaxe da função format() em Python

string_template.format(val1, val2...)

Parâmetros

val1, val2 ... : Os valores que precisam substituir na string template dada que tem placeholders na forma de chaves {}. Os placeholders podem ser string, par chave/valor, inteiros, números de ponto flutuante, caracteres, etc.

Valor de retorno:

Retorna a string final, com valores válidos substituídos no lugar dos placeholders dados entre chaves.

Placeholders

Os placeholders na string template são representados usando chaves, ex: {}. O placeholder pode ser vazio {}, ou pode ter uma variável ex: {nome}, ou pode ter um índice numérico ex: {0}, {1} etc.

Como o string format() funciona?

O método Python String format() escaneia as strings originais por placeholders. Os placeholders podem ser chaves vazias ({}), argumentos posicionais i.e. a string pode ter placeholders com índice 0, 1 ex: {0}, {1} etc.

Para argumentos de palavra-chave, o nome da variável estará presente dentro das chaves ex: {nome}, {idade}. No caso de chaves vazias, os valores do format serão substituídos dentro das chaves em sequência.

O primeiro valor será substituído na primeira chave vazia, seguido pelo próximo. Para argumentos posicionais, o índice começará de 0 e assim por diante. Os valores estarão disponíveis no format separados por vírgulas, e o valor 0 apontará para o primeiro valor dentro do format e assim por diante.

Para argumentos de palavra-chave, i.e., quando você usa uma variável dentro dos seus placeholders, você pode ter a ordem dos valores dentro do format como precisar. A ordem não importa aqui pois os valores serão substituídos baseados no nome da variável presente no format(). Aqui estão alguns exemplos de como usar placeholders dentro de uma string como vazios, posicionais e usando palavras-chave ou variáveis.

Exemplo: Placeholder vazio substituído por valor string

No exemplo abaixo, a string tem chaves vazias({}). O valor dado ao format será substituído dentro das 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 string. O valor é dado para format("Guru99"). Na execução, as chaves {} são substituídas por Guru99, e você obterá a string final como Bem-vindo ao Guru99 tutoriais.

print("Bem-vindo a {} tutoriais".format("Guru99"))

Saída:

Bem-vindo a Guru99 tutoriais

Exemplo: Placeholder vazio substituído por 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 executa, as chaves vazias ({}) são substituídas pelo valor numérico.

Exemplo:

Você também pode fazer uso de format() para inserir números dentro da sua string. O exemplo mostrará como substituir o Placeholder vazio {} com número 99 presente dentro do format().

print("Bem-vindo ao Guru{} Tutoriais".format("99"))

Saída:

Bem-vindo ao Guru99 Tutoriais

Exemplo: Usando variável ou argumentos de palavra-chave dentro do Placeholder

Também é possível fazer uso de variáveis dentro das chaves, como mostrado no exemplo abaixo. As variáveis são definidas dentro do format(). Portanto, quando executa, o valor atribuído à variável é substituído dentro da string original.

Exemplo:

Você pode usar variáveis dentro das chaves por exemplo {nome} {num}. Os valores para as variáveis nome e num estão disponíveis dentro do format i.e. format(nome="Guru", num="99"). Os valores dados a nome e num serão substituídos dentro de {nome} e {num}.

print("Bem-vindo a {nome}{num} Tutoriais".format(nome="Guru", num="99"))

Saída:

Bem-vindo a Guru99 Tutoriais

Exemplo: Usando índice ou argumentos posicionais dentro do Placeholder

Os valores podem ser substituídos usando índices como 0, 1, 2 dentro dos placeholders. O valor será pego em ordem do format(), como mostrado no exemplo abaixo.

Exemplo:

print("Bem-vindo a {0}{1} Tutoriais".format("Guru","99"))

Saída:

Bem-vindo a Guru99 Tutoriais

Exemplo: Usando múltiplos placeholders dentro de uma string

Neste exemplo, vamos usar múltiplos placeholders vazios.

Exemplo:

A string usada no exemplo tem múltiplos placeholders vazios e cada placeholder se referirá a um valor dentro do format(). O primeiro valor será substituído para o primeiro placeholder e assim por diante.

print("{} é {} novo tipo de {} experiência!".format("Guru99", "totalmente","aprendizado"))

Saída:

Guru99 é totalmente novo tipo de aprendizado experiência!

Formatação dentro de Placeholders

Você viu que é possível ter Placeholder como vazio, com uma variável ou um índice. Também é possível que você possa aplicar Formatação de String Python dentro do Placeholder.

Aqui está a lista de formatos

Formato Descrição Exemplo
:d Retorna saída em formato decimal quando usado dentro do placeholder print("O valor binário para decimal é: {:d}".format(0b0011))
Saída:
O valor binário para decimal é: 3
:b Retorna saída em formato binário quando usado dentro do placeholder print("O valor binário é: {:b}".format(500))
Saída:
O valor binário é: 111110100
:e Retorna saída em formato científico quando usado dentro do placeholder, o expoente e na saída será minúsculo. print("O valor científico é: {:e}".format(40))
Saída:
O valor em formato científico é: 4.000000e+01
:E Retorna saída em formato científico quando usado dentro do placeholder, o expoente E na saída será maiúsculo print("O valor científico é: {:E}".format(40))
Saída:
O valor científico é: 4.000000E+01
:f Isso exibirá um número em formato de ponto fixo. Por padrão, você obterá a saída de qualquer número com seis casas decimais. Caso precise até 2 casas decimais, use como .2f i.e. um ponto (.) na frente de 2f print("O valor é: {:f}".format(40))
Saída:
O valor é: 40.000000

Exemplo: Mostrando saída até 2 casas decimais.
print("O valor é: {:.2f}".format(40))
Saída:
O valor é: 40.00
:o Isso exibirá formato octal print("O valor é: {:o}".format(500))
Saída:
O valor é: 764
:x Isso exibirá formato hex em minúsculas print("O valor é: {:x}".format(500))
Saída:
O valor é: 1f4
:X Isso exibirá formato hex em maiúsculas. print("O valor é: {:X}".format(500))
Saída:
O valor é: 1F4
:n Isso exibirá formato numérico. print("O valor é: {:n}".format(500.00))
Saída:
O valor é: 500
:% Isso dará a saída em formato de porcentagem. Por padrão dará 6 casas decimais para a saída de porcentagem, caso não queira nenhum valor decimal você pode usar ponto com 0 i.e ({:.0%}). print("O valor é: {:%}".format(0.80))
Saída:
O valor é: 80.000000%

Este exemplo mostra como pular as casas decimais usando {:.0%} dentro do placeholder.
print("O valor é: {:.0%}".format(0.80))
Saída:
O valor é: 80%
:_ Isso exibirá um underscore como separador de milhares. Disponível a partir do Python 3.6+. print("O valor é {:_}".format(1000000))
Saída:
O valor é: 1_000_000
:, Isso exibirá vírgula como separador de milhares print("O valor é: {:,}".format(1000000))
Saída:
O valor é: 1,000,000

A vírgula(,) é adicionada como separador de milhares como mostrado na saída.
: Isso adicionará um espaço antes de qualquer número positivo Este exemplo mostra como adicionar espaço ou padding antes do número dado. O número 5 indica a contagem de espaços que você quer antes do número.
print("O valor é: {:5}".format(40))
Saída:
O valor é:     40
:- Isso adicionará um sinal de menos antes de números negativos O exemplo mostra como obter a saída com um sinal de menos (-) antes do número usando {:-}.
print("O valor é: {:-}".format(-40))
Saída:
O valor é: -40
:+ Você pode usar 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 {:+}.
print("O valor é: {:+}".format(40))
Saída:
O valor é: +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/menos (+/-) antes do sinal de igual usando {:=}.
print("O valor é {:=}".format(-40))
Saída:
O valor é -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.
print("O valor {:^10} é valor positivo".format(40))
Saída:
O valor     40     é valor positivo

Aqui, você pode usar 10 que adicionará 10 espaços no texto final, e o valor a ser substituído será centralizado 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.
print("O valor {:>10} é valor positivo".format(40))
Saída:
O valor         40 é valor positivo
:< Isso alinhará à esquerda o resultado final O espaço de 10 é adicionado usando (:<10), e o valor substituído é alinhado à esquerda.
print("O valor {:<10} é valor positivo".format(40))
Saída:
O valor 40         é valor positivo

Usando classe com format()

Neste exemplo, estamos criando uma classe e usando o objeto da classe dentro do método .format Python. Os placeholders se referirão a propriedades ou membros da classe usando o objeto da classe.

Exemplo:

A classe é chamada dentro do format(c=MinhaClasse()). O objeto c terá a referência às propriedades e métodos dentro da classe MinhaClasse().

class MinhaClasse:
    msg1="Guru"
    msg2="Tutoriais"
print("Bem-vindo a {c.msg1}99 {c.msg2}!".format(c=MinhaClasse()))

Saída:

Bem-vindo a Guru99 Tutoriais!

Usando dicionário com format()

Também é possível fazer uso de dicionário dentro do format() como mostrado no exemplo abaixo:

meu_dict = {'msg1': "Bem-vindo", 'msg2': 'Guru99'}
print("{m[msg1]} a {m[msg2]} Tutoriais!".format(m=meu_dict))

Saída:

Bem-vindo a Guru99 Tutoriais!

Preenchimento de Substituições de Variáveis

Usando o método string.format(), você pode adicionar preenchimento, espaço usando placeholders dentro da sua string.

Exemplo:

No exemplo abaixo, adicionaremos espaço dentro do Placeholder usando o format(). Para adicionar espaço, você tem que especificar o número de espaços dentro das chaves depois dos dois pontos(:). Então o Placeholder ficará como {:5}.

print("Eu tenho {:5} cachorros e {:5} gato".format(2,1))

Saída:

Eu tenho     2 cachorros e     1 gato

Você também pode dar o índice dentro do placeholder por exemplo: {0:5} onde 0 se referirá ao primeiro valor dentro do format.

print("Eu tenho {0:5} cachorros e {1:5} gato".format(2,1))

Saída:

Eu tenho     2 cachorros e     1 gato

Resumo

python

  1. Dominando Java String.indexOf(): Localizando Substrings e Exemplos Práticos
  2. Dominando o Método strip() do Python: Guia Completo e Exemplos Práticos
  3. Domine o str.count() do Python: Como Contar Caracteres e Substrings com Exemplos
  4. Domine o Método String.find() do Python: Sintaxe, Exemplos e Alternativas
  5. Dominando Funções Lambda em Python: Exemplos Práticos e Boas Práticas
  6. Função round() em Python Explicada com Exemplos Práticos
  7. Dominando a Função map() do Python: Sintaxe, Exemplos e Boas Práticas
  8. Python timeit(): Medindo Tempo de Execução com Exemplos Práticos
  9. Counter do Python em collections: Contagem Eficiente, Atualização e Operações Aritméticas
  10. Entendendo type() e isinstance() em Python: Exemplos Práticos