English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico do Python

Controle de fluxo do Python

Funções do Python

Tipos de Dados do Python

Operação de arquivo do Python

Objetos e classes do Python

Data e hora do Python

Conhecimento avançado do Python

Manual do Python

Uso e exemplo do format() do Python

Funções integradas do Python

O método format() integrado formata o valor especificado no formato especificado.

O método format() é semelhante aFormatação de StringMétodo. Internamente, esses dois métodos chamam o método __format __() do objeto.

O método format() integrado é uma implementação interna de formatação de objetos __format __(), enquanto o format() de string é uma implementação avançada que pode executar operações de formatação complexa em múltiplos objetos de string.

A sintaxe do format() é:

format(value[, format_spec])

Parâmetros do format()

O método format() usa dois parâmetros:

  • value -Valor a ser formatado

  • format_spec-Normas sobre como configurar o formato dos valores.

O especificador de formato pode ser usado no seguinte formato:

[[fill]align][sign][#][0][width][,][.precision][type]
onde, as opções são
fill ::= qualquer caractere
align ::= "<" | ">" | "=" | "^"
sign ::= "+" | "-" | "
width ::= inteiro
precision ::= inteiro
type ::= "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"

Você pode saber mais sobreTipos de formatoeAlinhamentoMais informações.

O valor retornado pelo format()

O método format() formata o valor especificado no formato especificado.

Exemplo1:usar format() para formatar números

# d,f和b são tipos
# Parâmetro inteiro
print(format(123, "d"))
# Parâmetro float
print(format(123.4567898, "f"))
# Parâmetro binário
print(format(12, "b"))

Quando o programa é executado, a saída é:

123
123.456790
1100

Exemplo2: Formatação de número com preenchimento, alinhamento, sinal, largura, precisão e tipo

# Parâmetro inteiro
print(format(1234, "*>+7,d"))
# Parâmetro float
print(format(123.4567, "^-09.3f"))

Quando o programa é executado, a saída é:

*+1,234
0123.4570

Aqui, ao formatar números inteiros1234ao especificar o marcador de formatação* <+ 7,d. Vamos ver o significado de cada opção:

  • * -É o caractere de preenchimento, usado para preencher espaços em branco após a formatação

  • > -É a opção de alinhamento à direita, que pode alinhar a string de saída à direita

  • + -É uma opção de sinal, usada para forçar a assinatura do número (com um sinal à esquerda)

  • 7-A opção width força o número a usar o comprimento mínimo7, outros espaços serão preenchidos com caracteres de preenchimento

  • , -O operador de milhar coloca vírgulas entre todos os milhares

  • d -É uma opção de tipo, usada para especificar números como inteiros.

Formatação de número float123.4567ao especificar o marcador de formato ^ -09.3f. Esses são:

  • ^ -É a opção de alinhamento central, que pode alinhar a string de saída no centro do espaço restante

  • --O símbolo da opção força o uso de sinal apenas para números negativos

  • 0-É o caractere de substituição para espaços em branco.

  • 9-Usar a opção width para definir o comprimento mínimo do número9Incluindo o ponto decimal, a vírgula de milha e o sinal

  • .3-O operador de precisão define a precisão do número float.3bits

  • f -É uma opção de tipo, usada para especificar números como números decimais.

Exemplo3: Usar format() para sobrescrever __format__

# Personalizar o método __format__()
class Person:
    def __format__(self, format):
        if(format == 'age'):
            return ''23'
        return 'None'
print(format(Person(), 'age'))

Quando o programa é executado, a saída é:

23

Aqui, nós sobrescrevemos o método __format__ da classe Person.

Agora, ele aceita os parâmetros code> age para retornar23. Se não for especificado o formato, retornará None.

O método format() interna opera Person().__format__('age') para retornar23.

Funções integradas do Python