Solución:
Necesitas isinstance(variable, datetime.datetime)
:
>>> import datetime
>>> now = datetime.datetime.now()
>>> isinstance(now, datetime.datetime)
True
Actualizar
Como lo notó Davos, datetime.datetime
es una subclase de datetime.date
, lo que significa que lo siguiente también funcionaría:
>>> isinstance(now, datetime.date)
True
Quizás el mejor enfoque sería simplemente probar el tipo (como lo sugiere Davos):
>>> type(now) is datetime.date
False
>>> type(now) is datetime.datetime
True
Pandas Timestamp
Un comentario mencionó que en python3.7, que la solución original en esta respuesta devuelve False
(funciona bien en python3.4). En ese caso, siguiendo los comentarios de Davos, podría hacer lo siguiente:
>>> type(now) is pandas.Timestamp
Si desea comprobar si un artículo es de tipo datetime.datetime
O pandas.Timestamp
, solo busca ambos
>>> (type(now) is datetime.datetime) or (type(now) is pandas.Timestamp)
Usar isinstance
.
if isinstance(variable,datetime.datetime):
print "Yay!"
isinstance
es tu amigo
>>> thing = "foo"
>>> isinstance(thing, str)
True
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)