0Pricing
Lua Academy · Lección

Formatear fechas

Cree cadenas de fecha legibles

Formatear fechas es una lección gratuita de Lua 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 Lua Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Lua Academy incluye 4 lecciones en total.

Dar forma a la salida

Ya sabe que os.date puede dar formato al tiempo. En esta lección se centra en la propia cadena de formato: los pequeños códigos % que determinan exactamente cómo aparece una fecha.

Si los domina, podrá generar fechas con cualquier estilo, desde 2024-03-09 hasta Saturday, March 9.

print(os.date("%Y-%m-%d"))

Año, mes y día

Los códigos de fecha principales son %Y para el año de cuatro dígitos, %m para el mes de dos dígitos (01-12) y %d para el día de dos dígitos (01-31).

Todo lo que no sea un código, como los guiones de este ejemplo, se imprime exactamente tal como está escrito.

print(os.date("%Y/%m/%d"))
print(os.date("%d-%m-%Y"))

Horas, minutos y segundos

Para la hora, use %H para la hora en formato de 24 horas (00-23), %M para los minutos y %S para los segundos.

Cada valor ocupa dos dígitos y se completa con un cero inicial cuando es necesario, de modo que las horas siempre quedan bien alineadas.

print(os.date("%H:%M:%S"))

Reloj de 12 horas

¿Prefiere el formato AM/PM? Use %I para la hora en formato de 12 horas (01-12) y %p para AM o PM.

Al combinarlos, obtiene una hora fácil de leer, como 03:45 PM.

print(os.date("%I:%M %p"))

Nombres de los días

Lua puede escribir los días de la semana. %A proporciona el nombre completo, como lunes, mientras que %a proporciona la forma abreviada, como lun.

Estos nombres siguen la configuración regional de su sistema, por lo que aparecen en el idioma configurado en su equipo.

print(os.date("%A"))
print(os.date("%a"))

Nombres de los meses

Los meses funcionan de la misma manera. %B proporciona el nombre completo del mes, como marzo, y %b proporciona la forma abreviada, como mar.

Combine nombres con números para crear una cadena de fecha con estilo de titular.

print(os.date("%B %d, %Y"))

Una fecha completa fácil de leer

Al encadenar códigos y texto normal, puede escribir casi cualquier frase. Aquí, el día de la semana, el mes, el día y el año se combinan en una línea fácil de leer.

Observe que la coma y los espacios son simplemente caracteres normales entre los códigos.

print(os.date("%A, %B %d, %Y"))

Dar formato a una hora almacenada

El formato no se limita al momento actual. Pase un número de tiempo guardado como segundo argumento y podrá dar formato a cualquier instante con el mismo estilo.

Así es como los registros muestran cuándo ocurrió cada evento pasado.

local t = os.time({year=2022, month=12, day=25})
print(os.date("%A, %B %d, %Y", t))

Día del año y de la semana

Algunos códigos adicionales resultan útiles para contar. %j proporciona el día del año (001-366) y %w proporciona el número del día de la semana, donde el domingo es 0.

Estos códigos ayudan con las barras de progreso y la lógica de programación de tareas.

local t = os.time({year=2024, month=2, day=1})
print("Day of year:", os.date("%j", t))
print("Weekday num:", os.date("%w", t))

Escapar el signo de porcentaje

¿Qué ocurre si quiere incluir un signo de porcentaje literal en la salida? Escriba %% y Lua imprimirá un único %.

Esto evita confusiones cuando un símbolo de porcentaje aparece junto a un código de formato.

print(os.date("Loaded 100%% on %Y-%m-%d"))

Crear nombres de archivo

Un truco habitual consiste en incluir una marca de tiempo en el nombre de un archivo. Códigos como %Y%m%d_%H%M%S producen una cadena ordenable y sin espacios.

Los archivos nombrados de esta forma se ordenan naturalmente en orden cronológico en cualquier carpeta.

local name = os.date("backup_%Y%m%d.txt")
print(name)

Comprobación rápida

Elija el código adecuado para cada tarea.

Resumen

Las cadenas de formato combinan códigos % con texto normal. Códigos clave: %Y %m %d para la fecha, %H %M %S para la hora y %A %B para los nombres.

Use %I %p para el formato de 12 horas, %% para un signo de porcentaje literal y pase un número de tiempo para dar formato a instantes pasados. Con ellos puede dar a las fechas el formato que desee.

Preguntas frecuentes

¿La lección «Formatear fechas» es gratis?

Sí — el texto completo de «Formatear fechas» 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 Lua Academy, actualiza a CoddyKit PRO. El curso de Lua Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Formatear fechas»?

Cree cadenas de fecha legibles Practicas Lua 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 Lua Academy?

No se requiere experiencia previa. Lua 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 «Formatear fechas»?

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 Lua Academy?

Sí. Cada lección de Lua 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

  1. os.time y os.date
  2. Formatear fechas
  3. Aritmética temporal
  4. Medir duraciones
← Volver a Lua Academy