0Pricing
Go Academy · Aula

Verbos de Printf

Formate valores com precisão

Verbos de Printf é uma aula grátis de Go Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Go Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Go Academy inclui 4 aulas no total.

O que é um verbo?

fmt.Printf formata valores usando uma cadeia de caracteres de formatação. Dentro dela, um símbolo de porcentagem seguido de uma letra é um verbo que indica como imprimir o próximo argumento.

Exemplo: %d para inteiros, %s para cadeias de caracteres.

package main

import "fmt"

func main() {
    fmt.Printf("%s is %d years old\n", "Ada", 36)
}

Lembre-se da quebra de linha

Ao contrário de Println, Printf não adiciona uma quebra de linha. Adicione \n por conta própria quando quiser uma.

package main

import "fmt"

func main() {
    fmt.Printf("line one\n")
    fmt.Printf("line two\n")
}

O verbo universal %v

%v imprime um valor em seu formato padrão e funciona com quase qualquer tipo. %+v adiciona os nomes dos campos da estrutura.

package main

import "fmt"

type Point struct{ X, Y int }

func main() {
    p := Point{1, 2}
    fmt.Printf("%v\n", p)
    fmt.Printf("%+v\n", p)
}

O verbo de sintaxe do Go %#v

%#v imprime um valor da maneira como você o escreveria no código-fonte do Go. Ele é excelente para depuração.

package main

import "fmt"

type Point struct{ X, Y int }

func main() {
    p := Point{1, 2}
    fmt.Printf("%#v\n", p)
}

O verbo de tipo %T

%T imprime o tipo de um valor, o que é útil quando você não tem certeza do que está usando.

package main

import "fmt"

func main() {
    fmt.Printf("%T\n", 42)
    fmt.Printf("%T\n", "hi")
    fmt.Printf("%T\n", 3.14)
}

Bases inteiras

Os inteiros têm vários verbos:

  • %d decimal,
  • %b binário,
  • %o octal,
  • %x hexadecimal.
package main

import "fmt"

func main() {
    n := 255
    fmt.Printf("%d %b %o %x\n", n, n, n, n)
}

Formato de ponto flutuante

Os números de ponto flutuante usam %f para números decimais e %e para notação científica. %g escolhe a forma sensata mais curta.

package main

import "fmt"

func main() {
    x := 3.14159
    fmt.Printf("%f\n", x)
    fmt.Printf("%e\n", x)
    fmt.Printf("%g\n", x)
}

Precisão para números de ponto flutuante

Adicione .N para controlar as casas decimais. %.2f mostra exatamente dois dígitos após o ponto, sendo perfeito para valores monetários.

package main

import "fmt"

func main() {
    price := 9.5
    fmt.Printf("$%.2f\n", price)
}

Largura e alinhamento

Um número antes do verbo define uma largura mínima. Os valores são alinhados à direita por padrão; um sinal de menos os alinha à esquerda.

package main

import "fmt"

func main() {
    fmt.Printf("[%5d]\n", 42)
    fmt.Printf("[%-5d]\n", 42)
}

Preenchendo com zeros

Um 0 no início da largura preenche os números com zeros, sendo ideal para códigos de tamanho fixo ou registros de data e hora.

package main

import "fmt"

func main() {
    fmt.Printf("%04d\n", 7)
    fmt.Printf("%02d:%02d\n", 9, 5)
}

Booleanos, aspas e porcentagem

Mais verbos: %t para valores booleanos, %q para uma cadeia de caracteres entre aspas duplas e %% para um símbolo de porcentagem literal.

package main

import "fmt"

func main() {
    fmt.Printf("%t\n", true)
    fmt.Printf("%q\n", "hi")
    fmt.Printf("100%%\n")
}

Verificação rápida

Qual verbo formata um número de ponto flutuante com duas casas decimais?

Recapitulação: verbos do Printf

Agora você consegue formatar com precisão:

  • Geral: %v, %+v, %#v, %T.
  • Números: %d, %b, %x, %f, %.2f.
  • Layout: largura, - para alinhamento à esquerda, 0 para preenchimento com zeros.
package main

import "fmt"

func main() {
    fmt.Printf("%-8s %6.2f\n", "Total:", 12.5)
}

Perguntas Frequentes

A aula “Verbos de Printf” é grátis?

Sim — o texto completo de “Verbos de Printf” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Go Academy, atualize para CoddyKit PRO. O curso de Go Academy inclui 4 aulas no total.

O que vou aprender em “Verbos de Printf”?

Formate valores com precisão Você pratica Go Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Go Academy?

Nenhuma experiência prévia é necessária. Go Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Verbos de Printf”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Go Academy?

Sim. Cada aula de Go Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Verbos de Printf
  2. Sprintf e Fprintf
  3. A interface Stringer
  4. Leitura de entrada
← Voltar para Go Academy