python 判斷數據類型

Python 判斷數據類型有type和isinstancepython

基本區別在於:數組

type():不會認爲子類是父類ui

isinstance():會認爲子類是父類類型spa

class Color(object):
    pass

class Red(Color):
    pass

print type(Color()) == Color
print type(Red()) == Color
print isinstance(Red(),Color)

 執行結果以下:code

D:\software\Python2.7.13\python.exe C:/Users/Administrator/PycharmProjects/PythonStudy/test.py
True
False
True

 

用isinstance判斷mongDB中的一些數據類型:blog

  • 字符串、int、long、float  -  isinstance(data, (int, str, types.LongType, float))
  • 時間類型                          - isinstance(data, datetime.datetime)
  • 布爾類型                          - isinstance(data, (bool))
  • 字典類型                          - isinstance(data, (dict))
  • 數組                                 - isinstance(data, (list))
  • unicode                            - isinstance(data, unicode)
  • mongo obJect                  - isinstance(data, bson.objectid.ObjectId)

 

能夠引入types模板,獲取數據類型:ip

inport typesunicode

types取值:字符串

  BooleanType
  BufferType
  BuiltinFunctionType
  BuiltinMethodType
  ClassType
  CodeType
  ComplexType
  DictProxyType
  DictType
  DictionaryType
  EllipsisType
  FileType
  FloatType
  FrameType
  FunctionType
  GeneratorType
  GetSetDescriptorType
  InstanceType
  IntType
  LambdaType
  ListType
  LongType
  MemberDescriptorType
  MethodType
  ModuleType
  NoneType
  NotImplementedType
  ObjectType
  SliceType
  StringType
  StringTypes
  TracebackType
  TupleType
  TypeType
  UnboundMethodType
  UnicodeType
  XRangeType
io

相關文章
相關標籤/搜索