Formato y análisis
Use el diseño de referencia
Formato y análisis es una lección gratuita de Go Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Go Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Go Academy incluye 4 lecciones en total.
El formato de referencia
Go no usa códigos como %Y. En su lugar, utiliza una única hora de referencia como plantilla:
Mon Jan 2 15:04:05 MST 2006
Escriba la fecha con ese formato exacto para describir el formato que desea.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 9, 5, 0, 0, time.UTC)
fmt.Println(t.Format("2006-01-02"))
}¿Por qué esos números?
Los valores de referencia cuentan en orden: 1=mes, 2=día, 3=hora, 4=minuto, 5=segundo, 6=año y 7=zona horaria. Por tanto, 1 2 3 4 5 6 = 2 de enero, 03:04:05 de 2006.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 14, 5, 9, 0, time.UTC)
fmt.Println(t.Format("15:04:05"))
}Dar formato a una fecha
Combine libremente los componentes del formato con texto literal y separadores para crear cualquier cadena de fecha.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 9, 0, 0, 0, time.UTC)
fmt.Println(t.Format("02/01/2006"))
}Componentes con nombre
Use Jan o January para los nombres de los meses, y Mon o Monday para los nombres de los días de la semana.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 9, 0, 0, 0, time.UTC)
fmt.Println(t.Format("Monday, January 2, 2006"))
}Reloj de 12 horas y AM/PM
Use 3 para el reloj de 12 horas y PM como indicador de la parte del día.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 14, 30, 0, 0, time.UTC)
fmt.Println(t.Format("3:04 PM"))
}Constantes de formato integradas
El paquete incluye formatos listos para usar, como time.RFC3339 y time.Kitchen, por lo que no necesita memorizar los dígitos.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 9, 0, 0, 0, time.UTC)
fmt.Println(t.Format(time.RFC3339))
}Analizar una cadena
time.Parse(layout, value) convierte texto en un time.Time. El formato describe la estructura de la entrada mediante la misma hora de referencia.
package main
import (
"fmt"
"time"
)
func main() {
t, _ := time.Parse("2006-01-02", "2026-05-30")
fmt.Println(t.Year(), t.Month())
}El formato debe coincidir con la entrada
Si el formato no coincide con la estructura de la entrada, Parse devuelve un error. Compruébelo siempre.
package main
import (
"fmt"
"time"
)
func main() {
_, err := time.Parse("2006-01-02", "30/05/2026")
if err != nil {
fmt.Println("parse failed")
}
}Analizar horas con reloj
Incluya los campos de hora tanto en el formato como en la entrada para capturar las horas y los minutos.
package main
import (
"fmt"
"time"
)
func main() {
t, _ := time.Parse("2006-01-02 15:04", "2026-05-30 09:05")
fmt.Println(t.Hour(), t.Minute())
}Conversión de ida y vuelta
Parse y Format son operaciones inversas. Puede leer una marca de tiempo, trabajar con ella y volver a darle formato.
package main
import (
"fmt"
"time"
)
func main() {
t, _ := time.Parse(time.RFC3339, "2026-05-30T09:00:00Z")
fmt.Println(t.Format("Jan 2, 2006"))
}Error común: referencia incorrecta
Los principiantes suelen escribir "2020-12-31" como formato. Es incorrecto: el formato debe usar los valores de referencia (2006, 01, 02), no la fecha del ejemplo.
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2026, 5, 30, 0, 0, 0, 0, time.UTC)
fmt.Println(t.Format("2006/01/02"))
}Comprobación rápida
¿Qué cadena representa la fecha del formato de referencia de Go?
Repaso: dar formato y analizar
Ha aprendido a trabajar con texto temporal:
- Los formatos usan la hora de referencia
2006-01-02 15:04:05. Formatproduce cadenas;Parselas lee.- Use constantes integradas como
time.RFC3339y compruebe siempre los errores de análisis.
package main
import (
"fmt"
"time"
)
func main() {
t, _ := time.Parse("2006-01-02", "2026-05-30")
fmt.Println(t.Format("Monday"))
}Aprende Go con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 51
- Lecciones
- 203
Preguntas frecuentes
¿La lección «Formato y análisis» es gratis?
Sí — el texto completo de «Formato y análisis» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Go Academy, actualiza a CoddyKit PRO. El curso de Go Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Formato y análisis»?
Use el diseño de referencia Practicas Go Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Go Academy?
No se requiere experiencia previa. Go Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Formato y análisis»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Go Academy?
Sí. Cada lección de Go Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Tiempo y duración
- Formato y análisis
- Temporizadores y tickers
- Zonas horarias