2012-09-14 4 views
8

Si tengo permite decir esta cadena "2008-12-12 19:21:10" ¿cómo puedo convertirlo en una fecha y obtener el año, mes y día de ese objeto creado por separado?en Python, ¿cómo puedo convertir una cadena en un objeto de fecha y obtener el año, el mes y el día por separado?

+0

me olvidaba decir me gustaría conseguir algo como: object.getYear() #will imprimir el string'2008' o algo como ese –

+0

Podrías crear fácilmente una clase del 'datetime' usado o contener una instancia' datetime.datetime' y proporcionar un método 'get_year()'. – martineau

+0

@IvanJuarez: Ya he recogido todo eso. Puede editar su publicación, por lo tanto, si desea agregar información, simplemente hágalo. No es necesario usar un comentario para eso. –

Respuesta

21

Uso del datetime.datetime.strptime() function: Método

>>> from datetime import datetime 
>>> datestring = "2008-12-12 19:21:10" 
>>> dt = datetime.strptime(datestring, '%Y-%m-%d %H:%M:%S') 
>>> print dt.year, dt.month, dt.day 
2008 12 12 
0

https://www.tutorialspoint.com/python/time_strptime.htm Aquí puede encontrar strptime() completa:

from datetime import datetime 
dt = datetime.strptime(datestring, '%Y-%m-%d %H:%M:%S') 

Ahora usted tiene un objeto datetime.datetime, y tiene .year, .month y .day atributos descripción. donde puedes encontrar todo tipo de cuerdas. Por ejemplo: - Para convertir cadena como esta '15 âMAY-12'

>>>from datetime import datetime 
>>>datestring = "15-MAY-12" 
>>>dt = datetime.strptime(datestring, '%d-%b-%Y') 
>>>print(dt.year, dt.month, dt.day)enter code here 
2012 MAY 15 
Cuestiones relacionadas