Python: how can I check whether an object is of type datetime.date?
datetime, python
Solution
i believe the reason it is not working in your example is that you have imported `datetime` like so :
from datetime import datetime
this leads to the error you see
In [30]: isinstance(x, datetime.date)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/<ipython-input-30-9a298ea6fce5> in <module>()
----> 1 isinstance(x, datetime.date)
TypeError: isinstance() arg 2 must be a class, type, or tuple of classes and types
if you simply import like so :
import datetime
the code will run as shown in all of the other answers
In [31]: import datetime
In [32]: isinstance(x, datetime.date)
Out[32]: True
In [33]:
Problem
I have tried a few obvious options but none of them works: ``` In [150]: x Out[150]: datetime.date(2012, 9, 1) In [151]: type(x) Out[151]: datetime.date In [152]: isinstance(x, datetime.date) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-152-9a298ea6fce5> in <module>() ----> 1 isinstance(x, datetime.date) TypeError: isinstance() arg 2 must be a class, type, or tuple of classes and types In [153]: x is datetime.date Out[153]: False In [154]: type(x) is datetime.date Out[154]: False ``` What is the right way of doing this?