AD

¿Ya dominas lo básico? Un curso estructurado de Go es la vía rápida para dar el salto.

Ver cursos de Go en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐹Lecciones de Go
Lección 49 / 68

Dar formato a números (rellenar dígitos, decimales)

En esta lección controlarás cómo se ven los números al mostrarlos.

fmt.Printf acepta especificadores: %.2f muestra dos decimales, %03d rellena con ceros hasta tres dígitos y %5d alinea a la derecha en cinco posiciones.

El código de ejemplo muestra un importe con dos decimales y un número rellenado con ceros.

Aquí hay algo que conviene saber y que no se puede arreglar dentro del ejemplo: Go no tiene configuración regional en fmt. %.2f imprime siempre el punto como separador decimal, así que sale 1234.50 y no 1.234,50, que es como se escribe en español. No es un descuido de esta lección: la biblioteca estándar sencillamente no ofrece esa función.

Para dar formato según el país hace falta un módulo externo, golang.org/x/text/message, que se usa así: message.NewPrinter(language.Spanish).Printf(...). Que algo tan básico esté fuera de la biblioteca estándar sorprende, y es coherente con el criterio de Go de mantener el núcleo pequeño.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Go directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)