Dado el número de día, convertir a la fecha a la que se refiere.
Entrada : day_num = “339”, año = “2020”
Salida : 12-04-2020
Explicación : el día 339 de 2020 es el 4 de diciembre.Entrada : day_num = “4”, año = “2020”
Salida : 01-04-2020
Explicación : el 4.º día de 2020 es el 4 de enero.
Método #1: Usando datetime.strptime()
En esto, obtenemos la string del año y la string del número del día, y la pasamos a strptime(), que se convierte en la fecha requerida correspondiente.
Python3
# Python3 code to demonstrate working of # Convert day number to date in particular year # Using datetime.strptime() from datetime import datetime # initializing day number day_num = "339" # print day number print("The day number : " + str(day_num)) # adjusting day num day_num.rjust(3 + len(day_num), '0') # Initialize year year = "2020" # converting to date res = datetime.strptime(year + "-" + day_num, "%Y-%j").strftime("%m-%d-%Y") # printing result print("Resolved date : " + str(res))
The day number : 339 Resolved date : 12-04-2020
Método #2: Usar timedelta()
En esto, inicializamos la fecha el 1 de enero y luego agregamos el número de días usando timedelta(), lo que da como resultado la fecha requerida.
Python3
# Python3 code to demonstrate working of # Convert day number to date in particular year # Using datetime.strptime() from datetime import datetime, date, timedelta # initializing day number day_num = "339" # print day number print("The day number : " + str(day_num)) # adjusting day num day_num.rjust(3 + len(day_num), '0') # Initialize year year = "2020" # Initializing start date strt_date = date(int(year), 1, 1) # converting to date res_date = strt_date + timedelta(days=int(day_num) - 1) res = res_date.strftime("%m-%d-%Y") # printing result print("Resolved date : " + str(res))
The day number : 339 Resolved date : 12-04-2020
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA