zoukankan      html  css  js  c++  java
  • python 判断数据类型

    Python 判断数据类型有type和isinstance

    基本区别在于:

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

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

    class Color(object):
        pass
    
    class Red(Color):
        pass
    
    print type(Color()) == Color
    print type(Red()) == Color
    print isinstance(Red(),Color)
    

     执行结果如下:

    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体系结构
    面向对象DAO模式
    集合框架
    异常
    面向对象接口
    面向对象多态
    面向对象继承
    面向对象抽象封装
    JDBC
  • 原文地址:https://www.cnblogs.com/java-chanjuan/p/7099778.html
Copyright © 2011-2022 走看看