alexis
Estoy tratando de establecer una variable para que sea igual a la fecha de hoy.
Busqué esto y encontré un artículo relacionado:
Establecer la fecha de hoy como valor predeterminado en el modelo
Sin embargo, esto no respondió particularmente a mi pregunta.
Usé lo sugerido:
dt.date.today
Pero después
import datetime as dt
date = dt.date.today
print date
<built-in method today of type object at 0x000000001E2658B0>
Df['Date'] = date
No obtuve lo que realmente quería, que era un formato de fecha limpio de la fecha de hoy… en Mes/Día/Año.
¿Cómo puedo crear una variable del día de hoy para poder ingresar esa variable en un DataFrame?
dirkjot
Mencionas que estás usando Pandas (en tu título). Si es así, no hay necesidad de usar una biblioteca externa, solo puede usar to_datetime
>>> pandas.to_datetime('today').normalize()
Timestamp('2015-10-14 00:00:00')
Esto siempre devolverá la fecha de hoy a la medianoche, independientemente de la hora real, y se puede usar directamente en pandas para hacer comparaciones, etc. Pandas siempre incluye 00:00:00 en sus fechas y horas.
reemplazando today
con now
le daría la fecha en UTC en lugar de la hora local; tenga en cuenta que en ninguno de los casos se agrega tzinfo (zona horaria).
En versiones de pandas anteriores a 0.23.x, normalize
puede que no haya sido necesario eliminar la marca de tiempo que no es de medianoche.
-
pd.to_datetime('now')
para ganar tiempo también.– elPastor
13 de marzo de 2017 a las 18:15
-
En pandas 0.23.4, ‘Este Dia’ da la marca de tiempo actual (no solo la fecha) en la zona horaria local, y ‘ahora’ da la marca de tiempo actual en UTC. Entonces, el comportamiento de
to_datetime
ha cambiado. ¿Alguien sabe si este nuevo comportamiento llegó para quedarse? fuente– SV
12 de noviembre de 2018 a las 21:07
-
Da una marca de tiempo desde v 0.23:
2019-04-26 15:31:27.103623
– estancamientoUno
26 de abril de 2019 a las 13:35
-
curr_date = pd.to_datetime('today').date()
para obtener solo la fecha– NickNick
7 de abril de 2020 a las 14:23
-
@NickNick .date() se convertirá en datetime.date. Para mantener la fecha como una marca de tiempo, use curr_date = pd.to_datetime(‘today’).normalize()
–Julio Batista Silva
8 de junio de 2020 a las 14:25
Si quieres una cuerda mm/dd/yyyy
en vez de datetime
objeto, puedes usar strftime
(tiempo de formato de cadena):
>>> dt.datetime.today().strftime("%m/%d/%Y")
# ^ note parentheses
'02/12/2014'
Usando pandas: pd.Timestamp("today").strftime("%m/%d/%Y")
-
y por favor use ISO siempre que sea posible
pd.Timestamp('today').strftime("%Y-%m-%d")
– estancamientoUno
26 de abril de 2019 a las 13:46
pd.datetime.now().strftime(“%d/%m/%Y”)
esto dará como resultado ’11/02/2019′
puedes usar agregar tiempo si quieres
pd.datetime.now().strftime(“%d/%m/%Y %I:%M:%S”)
esto dará como resultado ’11/02/2019 11:08:26′
También puedes investigar pandas.Timestamp
que incluye métodos como .now
y .today
. A diferencia de pandas.to_datetime('now')
, pandas.Timestamp.now()
no se establecerá por defecto en UTC:
import pandas as pd
pd.Timestamp.now() # will return California time
# Timestamp('2018-12-19 09:17:07.693648')
pd.to_datetime('now') # will return UTC time
# Timestamp('2018-12-19 17:17:08')
Eugenio Loy
Tengo el mismo problema, así que probé muchas cosas, pero finalmente esta es la solución.
import time
print (time.strftime("%d/%m/%Y"))
fantasmal
Solución fácil en Python3+:
import time
todaysdate = time.strftime("%d/%m/%Y")
#with '.' isntead of "https://stackoverflow.com/"
todaysdate = time.strftime("%d.%m.%Y")
Solo necesita llamar al método.
date = dt.date.today()
– mhléster
12 de febrero de 2014 a las 20:11
Tenga en cuenta que cuando llegue el día siguiente, ese objeto de fecha seguirá representando el día anterior.
– usuario2357112
12 de febrero de 2014 a las 20:12