Skip to content

Instantly share code, notes, and snippets.

@kamikaze-lab
Created February 23, 2015 02:46
Show Gist options
  • Save kamikaze-lab/89c6b4f3f5a5e99245f6 to your computer and use it in GitHub Desktop.
Save kamikaze-lab/89c6b4f3f5a5e99245f6 to your computer and use it in GitHub Desktop.
Conversión de cadena a fecha y viceversa en Python

Conversión de cadena a fecha y viceversa en Python

Cómo convertir de cadena a fecha y de fecha a cadena con Python

  1. Objetivo y descripción
  2. Dependencias
  3. Puesta en marcha
  4. Referencias
  5. Créditos y autor

El objetivo de este snippet es mostrar qué tan fácil es convertir una cadena en cualquier formato de fecha a un objeto datetime de Python y hacer el proceso a la inversa

  • Python - The Python Language.
  1. En una terminal de comandos ingresa al intérprete de Python, escribiendo python
  2. Escribe el código:
from datetime import datetime

fecha_str = "14/07/2014"
date_object = datetime.strptime(fecha_str, '%dd/%mm/%Y')

Si quisiéramos convertir del objeto datetime a una cadena, haríamos:

from datetime import datetime

fecha_str = "14/07/2014"
date_object = datetime.strptime(fecha_str, '%dd/%mm/%Y')

fecha_str = datetime.strftime(date_object, '%dd/%mm/%Y')
  1. Visita la documentación para conocer más acerca de la función strptime.
@saidPF
Copy link

saidPF commented Apr 21, 2021

from datetime import datetime

fecha = datetime.strptime("2021-04-20T16:19:39.905Z", "%Y-%m-%dT%H:%M:%S.%fZ")
fecha2 = fecha.strftime('%Y-%m-%d %H:%M:%S')

print(fecha2)

Resultado: 2021-04-20 16:19:39

@creaticpy
Copy link

que pasa si la fecha esta al revez y quieres cambiarlo ya con el formateo.

from datetime import datetime

fecha = datetime.strptime("2021-04-20T16:19:39.905Z", "%Y-%m-%dT%H:%M:%S.%fZ")--->>> asi llega y quieres:
print(20-04-2021 T16:19:39.905Z", "%Y-%m-%dT%H:%M:%S.%fZ)

Hay veces en las cuales debemos cambiar el tipo de fecha.

@Santy2610
Copy link

No me funciona de esta manera date=datetime.strptime(fecha, "%d de %M de %Y")
tengo la fecha en formato largo ejemp. 10 de agosto de 2024
no me funciona me da el error:
time data '25 de agosto de 2024' does not match format '%d de %B de %Y'

@Ignaola
Copy link

Ignaola commented Jan 3, 2025

Tengo el problema con una base de datos que tiene las fechas de la forma "5 de abril", el problema es que python parece no reconocer los meses en español, ¿alguna sugerencia?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment