你需要isinstance(variable, datetime.datetime)
:
>>> import datetime
>>> now = datetime.datetime.now()
>>> isinstance(now, datetime.datetime)
True
更新
正如达沃斯所注意到的,datetime.datetime
是 的子类datetime.date
,这意味着以下内容也可以工作:
>>> isinstance(now, datetime.date)
True
也许最好的方法只是测试类型(如达沃斯所建议的那样):
>>> type(now) is datetime.date
False
>>> type(now) is datetime.datetime
True
熊猫Timestamp
一条评论提到,在 python3.7 中,这个答案中的原始解决方案返回False
(它在 python3.4 中运行良好)。在这种情况下,按照达沃斯的评论,您可以执行以下操作:
>>> type(now) is pandas.Timestamp
如果您想检查一个项目是否属于datetime.datetime
OR类型pandas.Timestamp
,只需检查两者
>>> (type(now) is datetime.datetime) or (type(now) is pandas.Timestamp)