zoukankan      html  css  js  c++  java
  • Python 判断数据类型有type和isinstance

    Python 判断数据类型有type和isinstance

    基本区别在于:

    type():不会认为子类是父类

    isinstance():会认为子类是父类类型

    1
    2
    3
    4
    5
    6
    7
    8
    9
    class Color(object):
        pass
     
    class Red(Color):
        pass
     
    print type(Color()) == Color
    print type(Red()) == Color
    print isinstance(Red(),Color)

     执行结果如下:

    1
    2
    3
    4
    D:softwarePython2.7.13python.exe C:/Users/Administrator/PycharmProjects/PythonStudy/test.py
    True
    False
    True

    用isinstance判断mongDB中的一些数据类型:

    • 字符串、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模板,获取数据类型:

    inport types

    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

  • 相关阅读:
    HDUOJ 1397(素数筛选法)
    HDUOJ 2045 LELE的RPG难题
    HDUOJ 2018
    HDUOJ 2031
    HDUOJ 2050
    括号配对问题
    HDOJ 1102 Constructing Roads(最小生成树)
    HDOJ Prime Ring Problem (深度优先搜索)
    HDUOJ 1233 还是畅通工程(最小生成树基础)
    邻接表(转)
  • 原文地址:https://www.cnblogs.com/zhaoyq/p/7886293.html
Copyright © 2011-2022 走看看