today semana poner partir obtener ingresar fecha crear como actual python python-2.7 datetime time

semana - strftime python



¿Cómo obtener la hora actual en Python y dividirla en año, mes, día, hora y minuto? (11)

Me gustaría obtener la hora actual en Python y asignarlos a variables como year , month , day , hour , minute . ¿Cómo se puede hacer esto en Python 2.7?


Al desempaquetar timetuple del objeto datetime, debe obtener lo que desea:

from datetime import datetime n = datetime.now() t = n.timetuple() y, m, d, h, min, sec, wd, yd, i = t


Aquí hay una línea que viene justo debajo de la línea de 80 caracteres máx.

import time year, month, day, hour, minute = map(int, time.strftime("%Y %m %d %H %M").split())


El módulo de datetime es tu amigo:

import datetime now = datetime.datetime.now() print now.year, now.month, now.day, now.hour, now.minute, now.second # 2015 5 6 8 53 40

No necesita variables separadas, los atributos en el objeto datetime devuelto tienen todo lo que necesita.


Esta es una pregunta anterior, pero se me ocurrió una solución que pensé que a otros les gustaría.

def get_current_datetime_as_dict(): n = datetime.now() t = n.timetuple() field_names = ["year", "month", "day", "hour", "min", "sec", "weekday", "md", "yd"] return dict(zip(field_names, t))

timetuple () se puede comprimir con otra matriz, lo que crea tuplas etiquetadas. Transmita eso a un diccionario y el producto resultante se puede consumir con get_current_datetime_as_dict()[''year''] .

Esto tiene un poco más de gastos generales que algunas de las otras soluciones aquí, pero he encontrado que es muy bueno poder acceder a los valores con nombre por el bien de Clartiy en el código.


La respuesta de datetime de tzaman es mucho más limpia, pero puede hacerlo con el módulo de time original de Python:

import time strings = time.strftime("%Y,%m,%d,%H,%M,%S") t = strings.split('','') numbers = [ int(x) for x in t ] print numbers

Salida:

[2016, 3, 11, 8, 29, 47]


Puedes usar gmtime

from time import gmtime detailed_time = gmtime() #returns a struct_time object for current time year = detailed_time.tm_year month = detailed_time.tm_mon day = detailed_time.tm_mday hour = detailed_time.tm_hour minute = detailed_time.tm_min

Nota: Se puede pasar una marca de tiempo a gmtime, el valor predeterminado es la hora actual tal como la devuelve time ()

eg. gmtime(1521174681)

Ver struct_time


Tres bibliotecas para acceder y manipular fechas y horas, a saber, fecha y hora, flecha y péndulo, hacen que estos elementos estén disponibles en tuplas con nombre cuyos elementos son accesibles por nombre o índice. Además, los artículos son accesibles exactamente de la misma manera. (Supongo que si fuera más inteligente no me sorprendería).

>>> YEARS, MONTHS, DAYS, HOURS, MINUTES = range(5) >>> import datetime >>> import arrow >>> import pendulum >>> [datetime.datetime.now().timetuple()[i] for i in [YEARS, MONTHS, DAYS, HOURS, MINUTES]] [2017, 6, 16, 19, 15] >>> [arrow.now().timetuple()[i] for i in [YEARS, MONTHS, DAYS, HOURS, MINUTES]] [2017, 6, 16, 19, 15] >>> [pendulum.now().timetuple()[i] for i in [YEARS, MONTHS, DAYS, HOURS, MINUTES]] [2017, 6, 16, 19, 16]


Veamos cómo obtener e imprimir día, mes, año en Python desde la hora actual:

import datetime now = datetime.datetime.now() year = ''{:02d}''.format(now.year) month = ''{:02d}''.format(now.month) day = ''{:02d}''.format(now.day) hour = ''{:02d}''.format(now.hour) minute = ''{:02d}''.format(now.minute) day_month_year = ''{}-{}-{}''.format(year, month, day) print(''day_month_year: '' + day_month_year)

resultado:

day_month_year: 2019-03-26


puede usar el módulo datetime para obtener la fecha y hora actual en Python 2.7

import datetime print datetime.datetime.now()

Salida:

2015-05-06 14:44:14.369392


Para python 3

import datetime now = datetime.datetime.now() print(now.year, now.month, now.day, now.hour, now.minute, now.second)


import time year = time.strftime("%Y") # or "%y"