什么是检查类型(datetime.date)python的最快方法

cod*_*321 1 python datetime python-3.x

我正在为datetime.date检查类型的麻烦.我不知道获得好的类型检查是否是python中的麻烦或者是否有我遗漏的东西:

In [14]: type(datetime.date)
Out[14]: type

In [15]: type(d)
Out[15]: datetime.date

In [16]: arbitrary = datetime.date(1990, 1, 1)

In [17]: type(arbitrary)
Out[17]: datetime.date
Run Code Online (Sandbox Code Playgroud)

我想要比__init__每次都要制作假日期更简单的东西

import datetime

class Month(object):

    def __init__(self, dateobj):
        if type(dateobj) == the type of datetime.date:
            we're good
        else:
            raise Exception('Please feed me a dateobj')
Run Code Online (Sandbox Code Playgroud)

检查这些类型的最快方法是什么,因为基类的类型通常返回无用的类型type.谢谢

小智 6

isinstance用于类型检查:

>>> import datetime
>>> isinstance('2016', datetime.datetime)
False
>>> today = datetime.datetime.now()
>>> isinstance(today, datetime.datetime)
True
Run Code Online (Sandbox Code Playgroud)