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

  • 相关阅读:
    [精品推荐]Android Studio插件整理
    Android星星评分控件RatingBar的使用
    Android 数据库升级解决方案
    Android版本升级同时Sqlite数据库的升级及之前数据的保留
    Android 热补丁动态修复框架小结
    实现判断条件中有in的判断
    066 基于checkpoint的HA机制实现
    065 updateStateByKey的函数API
    064 SparkStream与kafka的集成,主要是编程
    063 SparkStream数据接收方式
  • 原文地址:https://www.cnblogs.com/zhaoyq/p/7886293.html
Copyright © 2011-2022 走看看